上节课我们学习了画多边形,并且给多边形边框添加深度不同的颜色。
这节课我们来思考一个问题:如何给每个多边形添加不同的填充色?
由于我们的for循环是从小到大的,也就是说多边形是从三角形开始到四边形、五边形、六边形等,而大的多边形会覆盖小的多边形,所以最终填充颜色只保留最大的多边形的颜色。所以我们需要从最大的多边形开始由大到小填充。
因此我们需要修改for循环,让数字从大到小排列,想一想用什么方法?
举个简单的例子:
for i in range(10):
print(i,end='、')
print('')
for i in range(10):
print(9-i,end='、')
输出结果为:
0、1、2、3、4、5、6、7、8、9、
9、8、7、6、5、4、3、2、1、0、
利用这个方法,我们就可以为多边形填充颜色了
以下是完整代码:
import turtle as t
t.speed(0)
colors=['red','orange','yellow','green','cyan','blue','purple']
for i in range(3,10):
t.fillcolor(colors[i-3])
t.begin_fill()
for j in range(12-i):
t.fd(100)
t.lt(360/(12-i))
t.end_fill()
t.exitonclick()