问题描述
#this is a test
import turtle
wn = turtle.Screen()
turtles = []
def turtle_new(turtle_pos):
new_turtle = turtle.Turtle()
turtles.append(new_turtle)
turtle.penup()
turtle.goto(turtle_pos)
for i in range(5):
turtle_pos = (0,0)
turtle_new(turtle_pos)
for turtle in turtles:
turtle.forward(100)
turtle_pos = (turtle.position)
turtle_new(turtle_pos)
loadWindow = wn
wn.exitonclick()
解决方法
我相信您遇到的具体错误是由以下代码引起的:
for turtle in turtles:
turtle.forward(100)
turtle_pos = turtle.position()
turtle_new(turtle_pos)
您在代码中使用了模块名称turtle
,现在您添加了变量名称turtle
——而是将迭代变量别的东西:
for yertle in turtles:
yertle.forward(100)
turtle_pos = yertle.position()
turtle_new(turtle_pos)
现在代码应该可以运行了。虽然仍然没有多大意义,因为它在循环 turtles
时增加了 turtles
,所以你最终会得到一个无限循环。