【问题标题】:How to have Python turtle make an arithmetic spiral?如何让 Python 乌龟做一个算术螺旋?
【发布时间】:2023-03-10 05:51:01
【问题描述】:

我是 Turtle 的新手,但我制作螺旋的总体计划是定义一个递归函数 archSpiral(initialLen, increment, angle, n),它执行以下序列 n 次:

  1. 画一条线段initialLen
  2. 转过angle
  3. 并将initialLen 增加为increment

通过一遍又一遍地重复这个序列,它应该能够创建一个螺旋。

但是我在将这个过程变成文本时遇到了麻烦,到目前为止我已经

def archSpiral(initialLen, increment, angle, n):
    for _ in range(n):
        turtle.forward(initialLen)
        turtle.left(angle)
        turtle.foward(initialLen + increment)

但它不起作用,我被困在这里。

【问题讨论】:

  • 尝试用initialLen += increment更改第二个forward()命令
  • 成功了,谢谢!

标签: python turtle-graphics spiral


【解决方案1】:

只是重申Doyousketch2所说的:

def archSpiral(initialLen, increment, angle, n):
    for _ in range(n):
        turtle.forward(initialLen)
        turtle.left(angle)
        initialLen += increment

【讨论】:

  • @Doyousketch2,如果您想由此获得声誉,请随时在下面回答和评论,我将删除我的答案。
【解决方案2】:

另一种方法是将更多工作推到range()

def archSpiral(initialLen, increment, angle, n):
    for length in range(initialLen, initialLen + increment * n, increment):
        turtle.forward(length)
        turtle.left(angle)

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多