![小学生Python创意编程(视频教学版)](https://wfqqreader-1252317822.image.myqcloud.com/cover/254/52842254/b_52842254.jpg)
2.4 第8课:金灿灿的小星星
![](https://epubservercos.yuewen.com/D4A378/31397689107931906/epubprivate/OEBPS/Images/Figure-P40_5117.jpg?sign=1739277878-VQ9mRaF6mT5iqD1OxjcE3UgXzYvzD5G8-0-0d9f6c1922981dea354fe203fb43458c)
小海龟要画一个更加复杂的图形——小星星。
画之前我们来分析一下小星星的画法:
· 五角星不仅有5个角,还有5条边。
· 每画一条线段后,都需要旋转一个相同的角度,来画第二条线。
![](https://epubservercos.yuewen.com/D4A378/31397689107931906/epubprivate/OEBPS/Images/Figure-P40_15859.jpg?sign=1739277878-xp42U5LaAdCkB0eeRzxpeap9Qc2X5u1i-0-8be252b71dc639e0e43111ef278e910c)
可以分为5步:
小海龟再往前画一条线段,旋转一个角度。
小海龟再往前画一条线段,旋转一个角度。
小海龟再往前画一条线段,旋转一个角度。
小海龟再往前画一条线段,就连接上了。
![](https://epubservercos.yuewen.com/D4A378/31397689107931906/epubprivate/OEBPS/Images/Figure-P41_15860.jpg?sign=1739277878-tnyCmVGi01JFWBKWCzPDuE1JpEfVDeaM-0-8bb6a29a82721a5a48b0f15688846fb7)
有了思路,新建文件,开始写代码:
![](https://epubservercos.yuewen.com/D4A378/31397689107931906/epubprivate/OEBPS/Images/Figure-T41_16119.jpg?sign=1739277878-wRjSNtsFwsFT8zlYW7n5uKKOJDNUXvQ1-0-03285af0b5c9b688f27fa7836ea4d7f3)
保存文件并依次单击Run→Run Module选项,运行程序,小星星就画成功了。
![](https://epubservercos.yuewen.com/D4A378/31397689107931906/epubprivate/OEBPS/Images/Figure-P41_5138.jpg?sign=1739277878-6fJSZ75dOnP2KkejJ1PVQpMAVRN7YFek-0-e09372fe6718cf86d9a0115a77369b45)
2.4.1 添加背景色
只是画一个五角星还不太好玩,我们来给小星星的画布设置个背景颜色吧。
![](https://epubservercos.yuewen.com/D4A378/31397689107931906/epubprivate/OEBPS/Images/Figure-P41_15861.jpg?sign=1739277878-BK62kdpkR4PTTjuroSUi9NkefLAwlDCq-0-5cf709918d6984763ee8dac19c24781d)
开始之前,我们先认识小海龟绘图的画布。画布就是turtle为我们提供绘画的区域,我们可以设置绘画区域的大小和颜色,可以通过turtle.screensize()方法设置。
turtle.screensize()方法有三个参数:长、宽和背景颜色。
![](https://epubservercos.yuewen.com/D4A378/31397689107931906/epubprivate/OEBPS/Images/Figure-P42_15863.jpg?sign=1739277878-dORmBZuUCuVm1npt1eZ1fe5dbzc5F3aj-0-c85aace19d9a98132746540abbf3c15d)
长和宽控制着画布的大小,也就是方法前面的两个参数。
现在我们需要设置画布的背景颜色为黑色,制作一个漆黑的夜空。把第3个参数设置为black(黑色)即可,代码如下:
![](https://epubservercos.yuewen.com/D4A378/31397689107931906/epubprivate/OEBPS/Images/Figure-T42_16120.jpg?sign=1739277878-sxQULgKlJ5qt8gyfXb7kqHh4BJaauVtG-0-89cbb91578082bd7d4dd40c8725247a4)
保存文件并依次单击Run→Run Module选项,运行文件,画布背景颜色成了黑色。
![](https://epubservercos.yuewen.com/D4A378/31397689107931906/epubprivate/OEBPS/Images/Figure-P42_5208.jpg?sign=1739277878-R0BlNGEjOcjiWhnuU9kz6ewnkdRgYEKc-0-c2f52f7fc5e9910d92b983931e5c28cf)
学会了设置背景颜色,我们要将小星星的背景颜色设置为蓝色。修改小星星的代码如下:
![](https://epubservercos.yuewen.com/D4A378/31397689107931906/epubprivate/OEBPS/Images/Figure-T43_16121.jpg?sign=1739277878-TUOLJkixw0kdlO4rQilGnJu8ajv9seQL-0-e4d651c30ddbeb0fb5ed46e335612688)
保存文件并依次单击Run→Run Module选项,运行程序,画布背景颜色成了天空的颜色。
![](https://epubservercos.yuewen.com/D4A378/31397689107931906/epubprivate/OEBPS/Images/Figure-P43_15865.jpg?sign=1739277878-VnSNwT0XyXhepcXjVwPwHbhn9BJ8eeds-0-c7ccad19e3c70a30d2d1d75d8516fea4)
2.4.2 给小星星上色
背景图已经变成星空的蓝色。现在要把小星星变成闪闪发光的颜色,要怎么办呢?就是要给小星星上色,想想有什么方法可以使用呢?
方法如下:
首先,要设置填充颜色,让黑色的星空更美些。
然后,开始填充。
最后,填充完毕收工。
· turtle.fillcolor(*args):设置绘制图形的填充颜色。如果我们要填充的是黄色,就把黄色填写进去:turtle.fillcolor("yellow")。
· turtle.begin_fill():开始填充。
· turtle.end_fill():结束填充。
在小星星原有代码上进行修改,代码如下:
![](https://epubservercos.yuewen.com/D4A378/31397689107931906/epubprivate/OEBPS/Images/Figure-T44_16122.jpg?sign=1739277878-LuBKEyqLV4vmKIrS6MxM3HX9irfOVG3r-0-74cdfa01dc689f287e0b1e8905689074)
保存文件并依次单击Run→Run Module选项来运行程序,小星星就变成黄色了。
![](https://epubservercos.yuewen.com/D4A378/31397689107931906/epubprivate/OEBPS/Images/Figure-P44_15866.jpg?sign=1739277878-gF4u5rfyTjbinjfGp34rHohMFg9f8Bjk-0-5903f674099f0809d87e4f7bb4096f48)
天空中一颗闪耀的小星星就完成了。
注意
在Mac系统下运行程序,五角星的中间没有填充黄色;在Windows系统下,五角星是被黄色填满的。