【青少年编程】【Turtle】预备课1:认识新伙伴图图
「青少年编程竞赛交流群」已成立(适合6至18周岁的青少年),公众号后台回复【Scratch】或【Python】,即可进入。如果加入了之前的社群不需要重复加入。
微信后台回复“资料下载”可获取以往学习的材料(视频、代码、文档)。
1、Turtle图图
在开始练习前,先来认识一下接下来会陪伴你好几天的程序小伙伴儿turtle【图图】吧,为什么叫做turtle【图图】呢,是因为它长这样:
弄错了,是这个:
虽然有点丑丑的,但确实是一直货真价实的乌龟,乌龟的英文是turtle,你也可以叫它【图图】,当然你要是叫它小乌龟,也......没啥问题......😓
2、图图的设置
天啊!乌龟竟然能画图,开玩笑吗?
不过这确实是一只会画图的乌龟,就像乌龟在海滩上爬行能留下痕迹一样,程序中的【图图】也能帮助我们画出各种各样的线条。
(1)导入图图库
想要使用图图帮助你画图,需要提前做一些设置,设置很简单,一共就两步:
1、导入图图库
2、设定重要信息
import turtle as t
t.TurtleScreen._RUNNING = True
t.shape(name='turtle')
t.done()
第一行 就是导入【图图】库,然后给图图起了个新的名字t(后面会用到)
第二行 是固定的设置,咱们每次写上就行
第三行 是给图图设置一个形状,这里是turtle(乌龟形状),你也可以改成下面的英文:
arrow circle square triangle classic
第四行 也是一定要有的语句,它的作用是告诉程序,“我画完啦!”
练习1:
将第四行的?
改成其它几个英文单词,看看有什么不一样吧:
(单词:arrow
circle
square
triangle
classic
)
import turtle as t
t.TurtleScreen._RUNNING = True
t.shape(name='?')
t.done()
3、行动吧!图图
(1)图图走起来
掌握了图图的基本设置,就可以让图图开始行动啦,我们先学习最简单的向前走:
t.forward(100) # 向前走100步
想让图图向前走几步,数字就是多少,把这行代码写入到前面的程序中试试:
import turtle as t
t.TurtleScreen._RUNNING = True
t.shape(name='turtle')
t.forward(100) #向前走100步
t.done()
既然有向前走,那么,当然还有向后退,赶紧试试吧:
t.back(100) # 向后退100步
(2)向左转
既然能走,当然可以转弯啊,图图可是“艾科不来梅西多亚瑟星球”最能转的乌龟
向左转也很简单,就是下面这个口令啦:
t.left(90) #向左转90度
再加上向前走我们就能画出一个直角啦:
import turtle as t
t.TurtleScreen._RUNNING = True
t.shape(name='turtle')
t.forward(100) #向前走100步
t.left(90) #向左转90度
t.forward(100) #向前走100步
t.done()
挑战1:
(1)修改left
中的角度,看看图图能画出下面这些角吗?(钝角和锐角)
(2)除了向左转,也有向右转哦,它的指令是这样的t.right(100)
,赶紧试试吧!
练习2:
如果要画出下面这个角度为30度的角应该怎么办呢?
import turtle as t
t.TurtleScreen._RUNNING = True
t.shape(name='turtle')
t.forward(100) #向前走100步
t.right(30) #向右转30度
t.forward(100) #向前走100步
t.done()
这样写对吗?
哈哈,当然不对,来画一条辅助线看看,图图实际转动的度数是红色箭头指示的角度,我们知道平角等于180度,平角也就是下面这个平平的线啦:
所以图图实际转动的角度等于180 - 30 = 150,之后我们会画很多这样的角,你也可以做一条辅助线,用180减去标出来的角,就是要转动的角度啦:
正确的写法:
import turtle as t
t.TurtleScreen._RUNNING = True
t.shape(name='turtle')
t.forward(100) #向前走100步
t.right(150) #向右转150度
t.forward(100) #向前走100步
t.done()
4、参考答案
(1)
import turtle as t
t.TurtleScreen._RUNNING = True
t.shape(name='turtle')
t.forward(100) #向前走100步
t.left(60) #向左转120度
t.forward(100) #向前走100步
t.done()
(2)
import turtle as t
t.TurtleScreen._RUNNING = True
t.shape(name='turtle')
t.forward(100) #向前走100步
t.left(120) #向左转120度
t.forward(100) #向前走100步
t.done()