
2.1 第5课:画图的小海龟

在Python中,有一只会作图的小海龟,让我们一起来认识这只小海龟吧。在Python中,小海龟有个洋气的英文名字,叫作turtle。
小海龟有一整套的功能,我们把它叫作turtle库,这是Python的内部库。


turtle库是用来绘制图像的,小海龟可以绘制很多好看的图像,例如笑脸、小动物、美丽的圣诞树。小海龟很厉害吧。你学会之后,也可以变得那么厉害。当你想要运用Python画图的时候,导入turtle库,就可以召唤小海龟了。

一起来召唤神奇的小海龟吧。
找到计算机上的IDLE图标。单击之,进入IDLE Shell窗口。

新建一个Python文件,单击File菜单,再单击菜单中的New File选项,进入新的程序编辑界面。

输入代码:

单击File菜单,再单击菜单中的Sava As选项。

找到你想存放的位置,输入你想保存的名字,例如设置画笔形状.py,单击保存按钮,就可以将文件保存为设置画笔形状.py了。

保存后,再双击这个Python程序文件即可打开它,随后可以再次编辑它。

依次单击Run→Run Module选项,运行程序。

小海龟就被我们成功地召唤出来了。

我们一起来探索一下这只小海龟到底是怎么被召唤出来的吧。

程序是如何运行的?我们来一行一行地分析一下代码,探索这段奇妙的程序。
第一句import turtle,导入turtle模块。

我们可以使用turtle模块提供的方法,按照它的描述实现我们想要的功能。我们也可以提供模块,分享给别人使用或者自己复用。
第二句turtle.shape("turtle"),这是调用turtle模块的shape(name=None)方法,括号里的内容是用来改变海龟展示形式的,也就是说,还可以召唤其他的小伙伴。

括号里的内容决定了小海龟的样子。括号里也可以没有内容。
就像turtle.shape(),这样画图的小海龟会有一个默认的样子,不过它不能再叫作小海龟了。
在turtle.shape()括号里可以填入很多英文单词,不断改变小海龟的样子。
但是,我们填入的值必须是TurtleScreen的形状库中的,不是随便填的,比如pig就不行。
试一试turtle.shape("pig")吧,结果返回了一串红色的错误代码,没有猪的形状。
turtle.TurtleGraphicsError:There is no shape named pig

形状库有一些形状可以供我们使用:arrow、turtle、circle、square、triangle、classic。我们分别使用这些形状来改变小海龟的外形吧。
· arrow:将小海龟的形状改变为箭头,修改代码如下:

保存文件并单击Run→Run Module,运行程序,小海龟的形状变成了一个箭头。

· circle:将小海龟的形状改变为圆,修改代码如下:

保存文件并依次单击Run→Run Module选项,运行程序,小海龟的形状变成了一个圆。

· square:将小海龟的形状改变为正方形,修改代码如下:

保存文件并单击Run→Run Module选项,运行程序,小海龟的形状变成了一个正方形。

· triangle:将小海龟的形状改变为三角形,修改代码如下:

保存文件并依次单击Run→Run Module选项,运行程序,小海龟的形状变成了一个三角形。

· classic:将小海龟的形状改变为经典造型,小海龟的经典形状看上去也是一个箭头,不过和第一个箭头不太一样,修改代码如下:

保存文件并依次单击Run→Run Module选项,运行程序,小海龟的形状变成了一个箭头。

如果你认识arrow、turtle、circle、square、triangle、classic这些英文单词,你很快就能明白形状和代码的关系。如果不认识,就使用搜索引擎或者用英文词典查一查。除以上形状外,也可以自定义形状。当然,这是更加深入的内容,留着以后探索。
