使用Python的turtle模块画图的方法


Posted in Python onNovember 15, 2017

简介:turtle是一个简单的绘图工具。它提供了一个海龟,你可以把它理解为一个机器人,只听得懂有限的指令。

1.在文件头写上如下行,这能让我们在语句中插入中文

#-*-coding:utf-8-*-

2.用importturtle导入turtle库

3.绘图窗口的原点(0,0)在正中间。默认情况下,海龟向正右方移动。

4.操纵海龟绘图有着许多的命令,这些命令可以划分为两种:一种为运动命令,一种为画笔控制命令

(1)运动命令:

forward(d) 向前移动距离d代表距离
backward(d) 向后移动距离d代表距离
right(degree) 向右转动多少度
left(degree) 向左转动多少度
goto(x,y) 将画笔移动到坐标为(x,y)的位置
stamp() 绘制当前图形
speed(speed) 画笔绘制的速度范围[0,10]整数

(2)画笔控制命令:

down() 画笔落下,移动时绘制图形
up() 画笔抬起,移动时不绘制图形
setheading(degree) 海龟朝向,degree代表角度
reset() 恢复所有设置
pensize(width) 画笔的宽度
pencolor(colorstring) 画笔的颜色
fillcolor(colorstring) 绘制图形的填充颜色
fill(Ture)  
fill(False)  
circle(radius, extent) 绘制一个圆形,其中radius为半径,extent为度数,例如若extent为180,则画一个半圆;如要画一个圆形,可不必写第二个参数

使用Python的turtle(海龟)模块画图

第一步:让Python引入turtle模块,引入模块就是告诉Python你想要用它。

importturtle

第二步:创建画布。调用turtle中的Pen函数。

t=turtle.Pen()

使用Python的turtle模块画图的方法

第三步:移动海龟。

t.forward(50)

forward的中文意思是“向前地;促进”。所以这行代码的意思是海龟向前移动50个像素:

使用Python的turtle模块画图的方法

t.left(90)

让海龟左转90度

使用Python的turtle模块画图的方法

现在我们可以尝试画一个方块,思路就是前进-转向90度-前进,循环四次。

>>> t.forward(50)
>>> t.left(90)
>>> t.forward(50)
>>> t.left(90)
>>> t.forward(50)
>>> t.left(90)
>>> t,forward(50)
>>> t.left(90)
>>> t,forward(50)

效果如下:

使用Python的turtle模块画图的方法

第四步:擦除画布。

>>>t.reset()

重置命令(reset)这会清除画布并把海龟放回开始的位置。

>>>t.clear()

清除命令(clear)只清除屏幕,海龟仍停留在原位。

我们还可以让海龟向右(right)转,或者让它后退(backward)。我们可以用向上(up)来把笔从纸上抬起来(换句话说就是让海龟停止作画),用向下(down)来开始作画。

下面我们综合运用一下,画两条线。

>>> t.reset() //擦除画布并把海龟移回到开始位置
>>> t.backward(100) //后退100个像素
>>> t.up() // 抬笔不再作画
>>> t.right(90) //向右转90度
>>> t.forward(20) //前进20个像素
>>> t.left(90) //向左转90度
>>> t.down() //下笔准备作画
>>> t.forward(100) //前进100个像素

效果如下:

使用Python的turtle模块画图的方法

总结

刚开始学用turtle模块作画,感觉就像小学刚开始作画一样。从前是拿起笔直接在纸上画,到现在使用Python作画时,感觉是把从前作画的动作分解开:准备画布——拿起笔准备作画——开始作画——放下笔不再作画。感觉很有趣,慢慢来,这才只是刚开始。

以上就是本文关于使用Python的turtle模块画图的方法的全部内容,希望对大家有所帮助。感兴趣的朋友可以继续参阅本站:

如有不足之处,欢迎留言指出。

Python 相关文章推荐
python之import机制详解
Jul 03 Python
利用Python查看目录中的文件示例详解
Aug 28 Python
Python爬虫常用小技巧之设置代理IP
Sep 13 Python
Django框架文件上传与自定义图片上传路径、上传文件名操作分析
May 10 Python
Django框架ORM数据库操作实例详解
Nov 07 Python
Flask框架路由和视图用法实例分析
Nov 07 Python
基于h5py的使用及数据封装代码
Dec 26 Python
python wav模块获取采样率 采样点声道量化位数(实例代码)
Jan 22 Python
python自动点赞功能的实现思路
Feb 26 Python
Python Map 函数的使用
Aug 28 Python
Python 实现Mac 屏幕截图详解
Oct 05 Python
python数字图像处理实现图像的形变与缩放
Jun 28 Python
python绘制铅球的运行轨迹代码分享
Nov 14 #Python
Python实现句子翻译功能
Nov 14 #Python
简述:我为什么选择Python而不是Matlab和R语言
Nov 14 #Python
Python与R语言的简要对比
Nov 14 #Python
Python基础语言学习笔记总结(精华)
Nov 14 #Python
Python利用multiprocessing实现最简单的分布式作业调度系统实例
Nov 14 #Python
python中os和sys模块的区别与常用方法总结
Nov 14 #Python
You might like
PHP截取中文字符串的问题
2006/07/12 PHP
第十五节--Zend引擎的发展
2006/11/16 PHP
IP攻击升级,程序改进以对付新的攻击
2010/11/23 PHP
PHP调用MsSQL Server 2012存储过程获取多结果集(包含output参数)的详解
2013/07/03 PHP
PHP的mysqli_rollback()函数讲解
2019/01/23 PHP
php实现记事本案例
2020/10/20 PHP
查找iframe里元素的方法可传参
2013/09/11 Javascript
JS复制内容到剪切板的实例代码(兼容IE与火狐)
2013/11/19 Javascript
JS的document.all函数使用示例
2013/12/30 Javascript
判断复选框是否被选中的两种方法
2014/06/04 Javascript
第一次接触神奇的Bootstrap菜单和导航
2016/08/01 Javascript
搭建Bootstrap离线文档的方法
2016/12/02 Javascript
ES6通过babel转码使用webpack使用import关键字
2016/12/13 Javascript
JavaScript之生成器_动力节点Java学院整理
2017/06/30 Javascript
vue2.X组件学习心得(新手必看篇)
2017/07/05 Javascript
vue项目中v-model父子组件通信的实现详解
2017/12/10 Javascript
vue移动端UI框架实现QQ侧边菜单组件
2018/03/09 Javascript
Vue $emit $refs子父组件间方法的调用实例
2018/09/12 Javascript
node实现分片下载的示例代码
2018/10/17 Javascript
vue和better-scroll实现列表左右联动效果详解
2019/04/29 Javascript
JS简易计算器实例讲解
2020/06/30 Javascript
[53:23]Secret vs Liquid 2018国际邀请赛淘汰赛BO3 第二场 8.25
2018/08/29 DOTA
python数据类型_字符串常用操作(详解)
2017/05/30 Python
python实现分页效果
2017/10/25 Python
分享Pycharm中一些不为人知的技巧
2018/04/03 Python
Python网络编程使用select实现socket全双工异步通信功能示例
2018/04/09 Python
对Python3 序列解包详解
2019/02/16 Python
python实现nao机器人手臂动作控制
2019/04/29 Python
Python中的 is 和 == 以及字符串驻留机制详解
2019/06/28 Python
使用卷积神经网络(CNN)做人脸识别的示例代码
2020/03/27 Python
input元素的url类型和email类型简介
2012/07/11 HTML / CSS
斯德哥尔摩通票:Stockholm Pass
2018/01/09 全球购物
美国知名眼镜网站:Target Optical
2020/04/04 全球购物
采购部部门职责
2013/12/15 职场文书
vue使用节流函数的踩坑实例指南
2021/05/20 Vue.js
python面向对象版学生信息管理系统
2021/06/24 Python