问题描述
我是 Turtle 的新手,但我制作螺旋的总体计划是定义一个递归函数 archSpiral(initialLen,increment,angle,n)
,它执行以下序列 n
次:
- 画一条
initialLen
的线段 - 转
angle
度 - 并用
initialLen
增加increment
通过一遍又一遍地重复这个序列,它应该能够创建一个螺旋。
但是我在将这个过程写入文本时遇到了麻烦,到目前为止我已经
def archSpiral(initialLen,n):
for _ in range(n):
turtle.forward(initialLen)
turtle.left(angle)
turtle.foward(initialLen + increment)
但它不起作用,我被困在这里。
解决方法
只是重申 Doyousketch2 所说的话:
def archSpiral(initialLen,increment,angle,n):
for _ in range(n):
turtle.forward(initialLen)
turtle.left(angle)
initialLen += increment
,
另一种方法是将更多的工作推到 range()
上:
def archSpiral(initialLen,n):
for length in range(initialLen,initialLen + increment * n,increment):
turtle.forward(length)
turtle.left(angle)