一、循环大法
先运行下面的代码
from turtle import *
speed(1)
shape('turtle')
shapesize(10,10)
for i in range(2):
lt(90)
mainloop()
运行之后,小海龟方面转了180度。我们只写了一个 lt(90),怎么会转了180度呢?这是因为我们这次写的lt(90)是在循环语句里面,而且range括号里面填了一个2。原来for循环里面的代码被重复执行了2次,所以左转了2次90度。大家可以试着把2改成4或其他的数字再运行看看效果。
大家可以尝试把以前我们用下面代码画正方形,改成用for循环实现。
from turtle import *
fd(100)
lt(90)
fd(100)
lt(90)
fd(100)
lt(90)
fd(100)
lt(90)
mainloop()
二、利用循环画美丽图形
画正六边形
from turtle import *
pensize(4)
color('red')
for i in range(6):
fd(100)
lt(360/6)
mainloop()
看懂了上面的代码,你就可以很轻松的画任意正多边形了,只要改两个地方哦
我们再画一个五角星
五角星
我们分析下五角星怎么画
1.五角星五条边,那么循环五次
2.算出每次转多少角度。怎么计算?只要利用多边形内角和公式就可以了。
还记得多边形内角各公式吗,(n-2)180,n代表边数,如果是三角形,内角和(3-2)180,五角形内部是一个正五边形,内角和是(5-2)180,每个内角是(5-2)180/5
好了,我们把代码写出来。
from turtle import *
pensize(4)
color('yellow','red')
begin_fill()
for i in range(5):
fd(200)
rt(2*(180-(5-3)*180/5))
end_fill()
mainloop()
再画一个下面这样的
迷宫
代码如下:
from turtle import *
pensize(4)
color('green','red')
for i in range(20):
fd((i+1)*10)
rt(90)
mainloop()
这里用了fd((i+1)*10),你应该可以猜到,i在每次循环中都加了1,第一次是0,第二次是1,...最后一次是19
我们把上面的代码增加循环次数,改变转角度数
from turtle import *
color('green')
for i in range(50):
fd((i+1)*5)
rt(89)
mainloop()
增加循环,改变转动度数