我们这里有一段程序,要求把它缩短,程序是这样的:
"""050_找规律优化程序.py 在本课中, 我们把代码进行修改。 """ from turtle import * from time import sleep 小龟=Turtle() 小龟.speed(1) for i in range(3): 小龟.fd(30) 小龟.right(120) sleep(2) 小龟.clear() for i in range(4): 小龟.fd(30) 小龟.right(90) sleep(2) 小龟.clear() #清除屏幕图像 for i in range(8): 小龟.fd(30) 小龟.right(45) sleep(2) 小龟.clear() for i in range(16): 小龟.fd(30) 小龟.right(22.5) sleep(2) 小龟.clear() for i in range(36): 小龟.fd(30) 小龟.right(10)
我们从代码看到有一只小海龟首先重复3次画了三角形,然后是重复4次画了正方形,接着是8次,16次,36次,都是画正多边形。所以我们应该定义一个画正多边形的函数。 为了再次缩短代码我们可以把这些重复的次数放到一个列表里头,然后依次把列表里的值迭代出来,每迭代出一次就画一个正多边形。下面是优化缩短后的代码:
"""050_找规律优化程序.py 在本课中, 我们把代码进行修改。 """ from turtle import * from time import sleep 小龟=Turtle() 小龟.speed(1) def 画多边形(龟,边长,边数): for i in range(边数): 龟.fd(边长) 龟.right(360/边数) 表=[3,4,8,16,36] for 数 in 表: 画多边形(小龟,30,数) sleep(2) 小龟.clear()
发表评论