本节书摘来自华章计算机《python语言程序设计》一书中的第3章,第3.7节,作者:[美]梁勇(y. daniel liang) 更多章节内容可以访问云栖社区“华章计算机”公众号查看。
关键点:python的turtle模块里包含移动笔、设置笔的大小、举起和放下笔的方法。
第1章介绍如何使用turtle绘画。一个turtle实际上是一个对象,在导入turtle模块时,就创建了对象。然后,可以调用turtle对象的各种方法完成不同的操作。本节将介绍turtle对象更多的方法。
当创建一个turtle对象时,它的位置被设定在(0,0)处——窗口的中心,而且它的方向被设置为向右。turtle模块用笔来绘制图形。默认情况下,笔是向下的(就像真实的笔尖触碰着一张纸)。如果笔是向下的,那么当移动turtle的时候,它就会绘制出一条从当前位置到新位置的线。表3-5罗列出控制笔的绘制状态的方法,表3-6罗列出移动turtle的方法。

https://yqfile.alicdn.com/2b1ff923d2f7b34924d97e50273138a7b2e60552.png
" >

https://yqfile.alicdn.com/ceb245041c619355256e7c4e5c5f1dda5313a52d.png" >
所有的方法都是简单明了的。学习它们的最好方式是写一段测试代码看看每个方法是如何工作的。
circle方法有三个参数:radius是必需的,extent和step是可有可无的。extent是一个角度,它决定绘制圆的哪一部分。step决定使用的阶数。如果step是3、4、5、6、…,那么circle方法将绘制一个里面包含被圆括住的三边、四边、五边、六边或更多边形(即正三角形、正方形、五边形、六边形等)。如果不指定阶数,那么circle方法就只画一个圆。
程序清单3-5显示了一个绘制三角形、正方形、五边形、六边形以及圆的代码,如图3-3所示:
程序清单3-5 simpleshapes.py

https://yqfile.alicdn.com/0491118d13eb92ac07b10f7b12889d18d19ecf04.png
第1行导入turtle模块。第3行设置笔的粗细为3个像素点。第4行将笔向上拉,这样就可以在第5行将位置改变到(-200,-50)。第6行将笔拉下,第7行绘制一个三角形。在第7行,turtle对象调用参数radius为40和阶数为3 的circle方法绘制出一个三角形。类似地,程序的其他部分绘制一个正方形(第12行),一个五边形(第17行),一个六边形(第22行),一个圆(第27行)。
检查点
3.25 如何将turtle的位置设置在(0,0)?
3.26 如何绘制一个直径为3的红点?
3.27 下面的方法将绘制出什么图形?

https://yqfile.alicdn.com/2a669fd7e7b12709534ebdb3c80fbbaca9ac64f8.png
3.28 如何使turtle快速移动?
3.29 如何取消turtle的最后一次操作?