使用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 相关文章推荐
以一段代码为实例快速入门Python2.7
Mar 31 Python
在Python中处理字符串之isdecimal()方法的使用
May 20 Python
Python编程django实现同一个ip十分钟内只能注册一次
Nov 03 Python
django站点管理详解
Dec 12 Python
Python3爬虫学习之应对网站反爬虫机制的方法分析
Dec 12 Python
python儿童学游戏编程知识点总结
Jun 03 Python
Django框架之登录后自定义跳转页面的实现方法
Jul 18 Python
wxPython绘图模块wxPyPlot实现数据可视化
Nov 19 Python
python计算波峰波谷值的方法(极值点)
Feb 18 Python
如何实现在jupyter notebook中播放视频(不停地展示图片)
Apr 23 Python
一文弄懂Pytorch的DataLoader, DataSet, Sampler之间的关系
Jul 03 Python
python双向链表实例详解
May 25 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
DOTA2 玩家自创拉野攻略 特色英雄快速成长篇
2020/04/20 DOTA
php csv操作类代码
2009/12/14 PHP
php setcookie(name, value, expires, path, domain, secure) 参数详解
2013/06/28 PHP
PHP中STDCLASS用法实例分析
2016/11/11 PHP
Yii框架日志操作图文与实例详解
2019/09/09 PHP
slice函数的用法 之不错的应用
2006/12/29 Javascript
jquery 插件学习(一)
2012/08/06 Javascript
JS 实现图片直接下载示例代码
2013/07/22 Javascript
JavaScript版TAB选项卡效果实例
2013/08/16 Javascript
利用JS来控制键盘的上下左右键(示例代码)
2013/12/14 Javascript
NodeJS Web应用监听sock文件实例
2015/02/18 NodeJs
JQuery复制DOM节点的方法
2015/06/11 Javascript
JavaScript的ExtJS框架中表格的编写教程
2016/05/21 Javascript
一个例子轻松学会Vue.js
2017/01/02 Javascript
浅谈js中同名函数和同名变量的执行问题
2017/02/12 Javascript
Bootstrap响应式导航由768px变成992px的实现代码
2017/06/15 Javascript
手动下载Chrome并解决puppeteer无法使用问题
2018/11/12 Javascript
深入浅析ng-bootstrap 组件集中 tabset 组件的实现分析
2019/07/19 Javascript
微信小程序如何通过用户授权获取手机号(getPhoneNumber)
2020/01/21 Javascript
[01:10:57]Liquid vs OG 2018国际邀请赛小组赛BO2 第一场 8.16
2018/08/17 DOTA
python中cPickle用法例子分享
2014/01/03 Python
python自动zip压缩目录的方法
2015/06/28 Python
python实现读取并显示图片的两种方法
2017/01/13 Python
Django读取Mysql数据并显示在前端的实例
2018/05/27 Python
python实现定时压缩指定文件夹发送邮件
2020/12/22 Python
python2和python3应该学哪个(python3.6与python3.7的选择)
2019/10/01 Python
基于python3的socket聊天编程
2020/02/17 Python
sklearn和keras的数据切分与交叉验证的实例详解
2020/06/19 Python
Python常用数字处理基本操作汇总
2020/09/10 Python
军用级手机壳,专为冒险而建:Zizo Wireless
2019/08/07 全球购物
星空联盟C# .net笔试题
2014/12/05 面试题
红色故事演讲稿
2014/05/22 职场文书
语文教研活动总结
2014/07/02 职场文书
节约用电倡议书
2015/04/28 职场文书
Pytorch 中net.train 和 net.eval的使用说明
2021/05/22 Python
解决使用了nginx获取IP地址都是127.0.0.1 的问题
2021/09/25 Servers