我可以迭代 turtles / 类 吗?

Can I iterate over turtles / classes?

我有四只乌龟,我想让它们都在同一个 y 位置,然后传入一个 x 位置,让它们沿着屏幕底部排成一行。

我想知道是否可以使用 for 循环?

代码:

from turtle import *

canvas = Screen()
bg_img = "assets\board.gif"

canvas.setup(1.0, 1.0, None, None)
canvas.bgpic(bg_img)
canvas.bgcolor("#222")
canvas.title("Boardgame")

start_ypos = -250
starta = (-20, start_ypos)

a = Turtle()
b = Turtle()
c = Turtle()
d = Turtle()

a.shape("square")
a.speed(0)
a.penup()
a.setpos(starta)

是的,您可以遍历 Turtle 个实例,例如将它们放入列表并对其进行循环:

for turtle_instance in [a, b, c, d]:
    turtle_instance.setpos(...)

事实上,开始可能更容易将它们列在一个列表中:

turtles = [Turtle() for _ in range(4)]  # see "list comprehension" if unfamiliar

然后访问 turtles[0] 而不是 a