使用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中执行系统命令的方法示例详解
Sep 14 Python
python中requests爬去网页内容出现乱码问题解决方法介绍
Oct 25 Python
11月编程语言排行榜 Python逆袭C#上升到第4
Nov 15 Python
Python设计模式之工厂模式简单示例
Jan 09 Python
Python实现对一个函数应用多个装饰器的方法示例
Feb 09 Python
Python 字符串操作(string替换、删除、截取、复制、连接、比较、查找、包含、大小写转换、分割等)
Mar 19 Python
python 定义n个变量方法 (变量声明自动化)
Nov 10 Python
对Python捕获控制台输出流的方法详解
Jan 07 Python
tensorflow图像裁剪进行数据增强操作
Jun 30 Python
Python基础进阶之海量表情包多线程爬虫功能的实现
Dec 17 Python
Python datetime模块的使用示例
Feb 02 Python
python中的unittest框架实例详解
Feb 05 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
一个简单的自动发送邮件系统(一)
2006/10/09 PHP
php中strstr、strrchr、substr、stristr四个函数的区别总结
2014/09/22 PHP
PHP文件系统管理(实例讲解)
2017/09/19 PHP
PHP利用递归函数实现无限级分类的方法
2019/03/22 PHP
JavaScript语言中的Literal Syntax特性分析
2007/03/08 Javascript
json-lib出现There is a cycle in the hierarchy解决办法
2010/02/24 Javascript
JS操作Cookies包括(读取添加与删除)
2012/12/26 Javascript
jquery select动态加载选择(兼容各种浏览器)
2013/02/01 Javascript
jQuery实现提示密码强度的代码
2015/07/15 Javascript
jquery插件Jplayer使用方法简析
2016/04/22 Javascript
基于javascript实现最简单的选项卡切换效果
2016/05/16 Javascript
jQuery实现查找最近父节点的方法
2016/06/23 Javascript
浅析JS中对函数function的理解(基础篇)
2016/10/14 Javascript
js实现符合国情的日期插件详解
2017/01/19 Javascript
基于Vue实现微信小程序的图文编辑器
2018/07/25 Javascript
基于vue v-for 多层循环嵌套获取行数的方法
2018/09/26 Javascript
Vue.js特性Scoped Slots的浅析
2019/02/20 Javascript
Vue组件内部实现一个双向数据绑定的实例代码
2019/04/04 Javascript
基于ajax及jQuery实现局部刷新过程解析
2020/09/12 jQuery
[09:37]2018DOTA2国际邀请赛寻真——不懈追梦的Team Serenity
2018/08/13 DOTA
Python 的内置字符串方法小结
2016/03/15 Python
Python中的浮点数原理与运算分析
2017/10/12 Python
Python实现抓取HTML网页并以PDF文件形式保存的方法
2018/05/08 Python
解决vscode python print 输出窗口中文乱码的问题
2018/12/03 Python
对python中大文件的导入与导出方法详解
2018/12/28 Python
jupyter notebook更换皮肤主题的实现
2021/01/07 Python
html5指南-2.如何操作document metadata
2013/01/07 HTML / CSS
HTML5之SVG 2D入门2—图形绘制(基本形状)介绍及使用
2013/01/30 HTML / CSS
Yankee Candle官网:美国最畅销蜡烛品牌之一
2020/01/05 全球购物
初中女生自我鉴定
2013/12/19 职场文书
高等教育学自荐书范文
2014/02/10 职场文书
2016年庆“七一”主题党日活动总结
2016/04/05 职场文书
【超详细】八大排序算法的各项比较以及各自特点
2021/03/31 Python
解决Python中的modf()函数取小数部分不准确问题
2021/05/28 Python
手把手教你从零开始react+antd搭建项目
2021/06/03 Javascript
MySQL数据库优化之通过索引解决SQL性能问题
2022/04/10 MySQL