- 小学生Python创意编程(视频教学版)
- 刘凤飞
- 796字
- 2024-12-31 20:11:26
2.4 第8课:金灿灿的小星星
![](https://epubservercos.yuewen.com/D4A378/31397689107931906/epubprivate/OEBPS/Images/Figure-P40_5117.jpg?sign=1739362923-9WrAZekzbm5VnQCCMO7AiSHmv7rqZiCL-0-b7fdfe9568accbc927071953b6849280)
小海龟要画一个更加复杂的图形——小星星。
画之前我们来分析一下小星星的画法:
· 五角星不仅有5个角,还有5条边。
· 每画一条线段后,都需要旋转一个相同的角度,来画第二条线。
![](https://epubservercos.yuewen.com/D4A378/31397689107931906/epubprivate/OEBPS/Images/Figure-P40_15859.jpg?sign=1739362923-g3Kx0iNkyZW6WYPkhdn4orb1D2dHThj0-0-abc9cba94db41975c33a5048844740ca)
可以分为5步:
小海龟再往前画一条线段,旋转一个角度。
小海龟再往前画一条线段,旋转一个角度。
小海龟再往前画一条线段,旋转一个角度。
小海龟再往前画一条线段,就连接上了。
![](https://epubservercos.yuewen.com/D4A378/31397689107931906/epubprivate/OEBPS/Images/Figure-P41_15860.jpg?sign=1739362923-X0NWSEXS49tymlK2fW8Xots3J6a0ADpq-0-1775f5a10fc47f3304f0cf25d4297a52)
有了思路,新建文件,开始写代码:
![](https://epubservercos.yuewen.com/D4A378/31397689107931906/epubprivate/OEBPS/Images/Figure-T41_16119.jpg?sign=1739362923-y3P4fuEc97op78Kzux7mrbjE9BzntbLw-0-74e0d68423d5a37a7f8af96bd1663a9e)
保存文件并依次单击Run→Run Module选项,运行程序,小星星就画成功了。
![](https://epubservercos.yuewen.com/D4A378/31397689107931906/epubprivate/OEBPS/Images/Figure-P41_5138.jpg?sign=1739362923-rV80s9ImBS13wuPzuCP3Bz2Io8Pko84Q-0-4f5c42fed205172035b6a6933971cadd)
2.4.1 添加背景色
只是画一个五角星还不太好玩,我们来给小星星的画布设置个背景颜色吧。
![](https://epubservercos.yuewen.com/D4A378/31397689107931906/epubprivate/OEBPS/Images/Figure-P41_15861.jpg?sign=1739362923-go60468DWBPeqI8lH7fcmdD30rRWGsl3-0-c2fa9652a893d1af48c75bb504f90159)
开始之前,我们先认识小海龟绘图的画布。画布就是turtle为我们提供绘画的区域,我们可以设置绘画区域的大小和颜色,可以通过turtle.screensize()方法设置。
turtle.screensize()方法有三个参数:长、宽和背景颜色。
![](https://epubservercos.yuewen.com/D4A378/31397689107931906/epubprivate/OEBPS/Images/Figure-P42_15863.jpg?sign=1739362923-EFKiPa1owR01AOCY1oMfaLNmSCqiqHPY-0-ccfcfc0301d709a23e6903623f9c23b6)
长和宽控制着画布的大小,也就是方法前面的两个参数。
现在我们需要设置画布的背景颜色为黑色,制作一个漆黑的夜空。把第3个参数设置为black(黑色)即可,代码如下:
![](https://epubservercos.yuewen.com/D4A378/31397689107931906/epubprivate/OEBPS/Images/Figure-T42_16120.jpg?sign=1739362923-5gUH9m33rONKPm9xQgJe9DwCG1e79Yyb-0-26f3ed58e29b3083c38757ee78c0e212)
保存文件并依次单击Run→Run Module选项,运行文件,画布背景颜色成了黑色。
![](https://epubservercos.yuewen.com/D4A378/31397689107931906/epubprivate/OEBPS/Images/Figure-P42_5208.jpg?sign=1739362923-Lk8vtMlrgTP5RfuOD3lbsZJv7ruA01RJ-0-5938862bb82628c80a6d1641ad85e4b3)
学会了设置背景颜色,我们要将小星星的背景颜色设置为蓝色。修改小星星的代码如下:
![](https://epubservercos.yuewen.com/D4A378/31397689107931906/epubprivate/OEBPS/Images/Figure-T43_16121.jpg?sign=1739362923-V76x0VoNrfzfYYlBwcEAIRG9oypkne7e-0-81aab935a3b3b8d30debc8d74dc4c11f)
保存文件并依次单击Run→Run Module选项,运行程序,画布背景颜色成了天空的颜色。
![](https://epubservercos.yuewen.com/D4A378/31397689107931906/epubprivate/OEBPS/Images/Figure-P43_15865.jpg?sign=1739362923-MQaw3U997S6mbth0KNeoaDVAsT85DMri-0-8fa2d4e9e265cad8c847b138d943e64b)
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=1739362923-sUH6qA4VJl3wNzj8H8az4u4EOterxlVG-0-c4622f597cd4e742bfd22ed4a3073670)
保存文件并依次单击Run→Run Module选项来运行程序,小星星就变成黄色了。
![](https://epubservercos.yuewen.com/D4A378/31397689107931906/epubprivate/OEBPS/Images/Figure-P44_15866.jpg?sign=1739362923-ySLKQyYoOivq6dFpm9ggDHE8oq5zMP44-0-19ad700acbd3a6991b33061e47e83e02)
天空中一颗闪耀的小星星就完成了。
注意
在Mac系统下运行程序,五角星的中间没有填充黄色;在Windows系统下,五角星是被黄色填满的。