使用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定时利用QQ邮件发送天气预报的实例
Nov 17 Python
python+opencv+caffe+摄像头做目标检测的实例代码
Aug 03 Python
Python正则表达式和re库知识点总结
Feb 11 Python
详解Python解决抓取内容乱码问题(decode和encode解码)
Mar 29 Python
python实现美团订单推送到测试环境,提供便利操作示例
Aug 09 Python
关于Python中的向量相加和numpy中的向量相加效率对比
Aug 26 Python
Python单元测试工具doctest和unittest使用解析
Sep 02 Python
pytorch-RNN进行回归曲线预测方式
Jan 14 Python
Python ADF 单位根检验 如何查看结果的实现
Jun 03 Python
python GUI计算器的实现
Oct 09 Python
python引入其他文件夹下的py文件具体方法
May 23 Python
5道关于python基础 while循环练习题
Nov 27 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 explode()函数的几个应用和implode()函数有什么区别
2015/11/05 PHP
Zend Framework数据库操作技巧总结
2017/02/18 PHP
Yii2下点击验证码的切换实例代码
2017/03/14 PHP
PHP 超级全局变量相关总结
2020/06/30 PHP
JavaScript触发器详解
2007/03/10 Javascript
左右悬浮可分组的网站QQ在线客服代码(可谓经典)
2012/12/21 Javascript
jquery判断浏览器后退时候弹出消息的方法
2014/08/11 Javascript
jquery ui bootstrap 实现自定义风格
2014/11/14 Javascript
javascript实现依次输入input自动定焦
2014/12/23 Javascript
javascript解三阶幻方(九宫格)
2015/04/22 Javascript
jQuery左侧大图右侧小图焦点图幻灯切换代码分享
2015/08/19 Javascript
如何根据百度地图计算出两地之间的驾驶距离(两种语言js和C#)
2015/10/29 Javascript
js实现模拟银行卡账号输入显示效果
2015/11/18 Javascript
实现高性能JavaScript之执行与加载
2016/01/30 Javascript
js如何准确获取当前页面url网址信息
2020/09/13 Javascript
jQuery实现的自适应焦点图效果完整实例
2016/08/24 Javascript
微信小程序 详解Page中data数据操作和函数调用
2017/01/12 Javascript
jQuery表单插件ajaxForm实例详解
2017/01/17 Javascript
js实现字符全排列算法的简单方法
2017/05/01 Javascript
详解Vue快速零配置的打包工具——parcel
2018/01/16 Javascript
在 Linux/Unix 中不重启 Vim 而重新加载 .vimrc 文件的流程
2018/03/21 Javascript
mint-ui在vue中的使用示例
2018/04/05 Javascript
angular2路由之routerLinkActive指令【推荐】
2018/05/30 Javascript
详解封装基础的angular4的request请求方法
2018/06/05 Javascript
JavaScript数据结构与算法之二叉树实现查找最小值、最大值、给定值算法示例
2019/03/01 Javascript
node删除、复制文件或文件夹示例代码
2019/08/13 Javascript
vue组件开发之tab切换组件使用详解
2020/08/21 Javascript
[42:25]2018DOTA2亚洲邀请赛 4.5 淘汰赛 LGD vs Liquid 第三场
2018/04/06 DOTA
Python 实现使用dict 创建二维数据、DataFrame
2018/04/13 Python
python中ASCII码和字符的转换方法
2018/07/09 Python
Python 使用Numpy对矩阵进行转置的方法
2019/01/28 Python
python 实现音频叠加的示例
2020/10/29 Python
圆明园纪录片观后感
2015/06/03 职场文书
幼儿园语言教学反思
2016/02/23 职场文书
php引用传递
2021/04/01 PHP
CSS 实现Chrome标签栏的技巧
2021/08/04 HTML / CSS