说明:本系列文章是为中小学生学习Python语言而编辑,在阅读本文之前,请已经做好如下准备:
对以上两点,若尚未达到,请自行参考网上有关资料。
1966年,麻省理工的数学家Seymour Aubrey Papert和Wally Feurzeig设计了一种名为Logo的编程语言,其初衷是为了向儿童教授计算机编程技能,Logo一词源自希腊语逻各斯(logos)。在Logo语言中,有一只小海龟(turtle),通过向它发送命令,可以实现各种绘图操作。Python继承了Logo语言的这个特点,在它里面有一个名为turtle的内置模块,同样能够实现各种绘图操作。
下面就学习一下,如果用这只小海龟画一个多边形。
首先,打开Python自带的IDLE编辑器,创建一个名为myturtle.py的文件。
要使用Python中的“海龟”,必须先要引入它。在刚才创建的文件中,写下第一行代码:
from turtle import \*这一行代码意味着从turtle模块汇总引入所有的函数。
from是一个关键词,表示从哪个模块引入函数turtle是用来绘图的模块名称import引入模块的关键词\*表示所有的东西,即turtle模块中的所有内容都被引入到当前文件中写完上面的代码,就保存文件。
**注意**:不要把文件命名为turtle.py,这个名称在Python中已经被模块turtle所在的文件占用了。你应该使用其他名称,比如myturtle.py、turtle2.py等等。
引入模块之后,就为后面的作图奠定了基础。想一想如何用铅笔作图?一定少不了的就是要让铅笔在纸面上移动起来。与此类似,我们也要先让海龟移动起来,它移动过程中的轨迹,就形成了图形。
此处,我们使用一个名为forward()的函数,实现位置的移动。接着上面一行,在文件中写第二行代码:
forward(100)在forward()函数里面的参数100,表示要移动的距离。还是先看看效果再说。
保存文件,按F5键,会看到下图结果:
图中间的带有箭头的线段,就是刚才画出来的。从这我们可以看到,海龟的初始位置,是在屏幕的中间,按照forward(100)这个质量,它要向前(向右)移动100个像素那么远的距离。注意,默认我们看到的是箭头——没有海龟出现。并且,默认方向是水平向右。
如果你非要显示一个海龟,也不是不可以,再增加一行代码。下面显示文件myturtle.py的所有代码:
from turtle import \*
forward(100)
shape("turtle")**注意**:写代码的时候,大小写不要弄错,拼写不要弄错,引号不要弄错,都要在英文半角状态下。
再保存文件,并按下F5键,会看到小海龟和它走过的轨迹了。
真实的海龟,不撞南墙不回头,是吗?不是,它会改变自己的行进方向的。在turtle模块中,也提供了改变方向的函数right()和left(),从名称上就能猜测到,分别实现的是向右转和向左转。
继续编辑myturtle.py文件,增加两行:
from turtle import \*
forward(100)
shape("turtle")
right(45) # new
forward(150) # new跟前面的代码比较,增加了两行,并且在新增的两行后面都有# new,这个内容叫做**注释**,它是给人看的,就是告诉阅读这部分代码的人,这两行是新增的。在Python中,注释的的内容前面必须写上#,这样在执行这段程序的时候,计算机就把#及其以后的内容忽略了(直到本行结束)。
在新增的两行中,right(45)表示向右转45°,这里的“右”是相对于海龟前进的方向而言;forward(150)就是向前走150个像素,注意此时的方向。联合起来,就实现了向右转45°并走150个像素。
执行这个程序(按F5键),得到下图结果:
到目前为止,小海龟从屏幕的中间,水平向右(默认的向前)移动100个像素,然后向右转45°,再前进150个像素。
利用forward()和right()函数,能够画正方形,可以自己试试。下面是参考代码。
from turtle import \*
forward(100)
shape("turtle")
right(90)
forward(100)
right(90)
forward(100)
right(90)
forward(100)当然,利用这两个函数,还能画其他图像。
前面提到了另外一个函数left(),与right()用法一样,只不过是向左转了,你也可以尝试一下。
上面代码画的是正方形,也就是正四边形,如果画正八边形,是不是就要把right()、forward()两个函数重复更多次了呢?有没有更好的实现方法呢?请看下回分解。
👇👇👇</strong></p>