使用 Turtle 绘制一组形状,但只显示一个

Drawing an array of shapes using Turtle, but only one showing up

我正在尝试使用 Turtle 绘制一堆正方形,但只显示最后一个,而不是两个。 (我打算添加更多,但我坚持这个)

wall = []
block = turtle.Turtle()
block.shape("square")
block.color("black")
block.penup()
wall.append(block)
wall.append(block)
wall[0].goto(20, 20)
wall[1].goto(40, 40)

如果您需要任何其他信息,请告诉我,感谢您的浏览。

您只创建了一只海龟,但随后在您的列表中放置了对那只海龟的两个引用 wall。如果您希望列表包含不同的海龟,则需要在循环中创建海龟来填充 wall

import turtle

wall = []
for i in range(2):
    block = turtle.Turtle()
    block.shape("square")
    block.color("black")
    block.penup()
    wall.append(block)
wall[0].goto(20, 20)
wall[1].goto(40, 40)

应该按预期工作。

另一种方法,是完全忘记 wall,只使用一只乌龟,但将其 stamp 其形状放在您想要的位置:

block = turtle.Turtle()
block.shape("square")
block.color("black")
block.penup()
    
block.goto(20, 20)
block.stamp()
block.goto(40, 40)
block.stamp()

它给出了与第一个代码相同的视觉模式。

如果打算有一堵方块墙,你可以循环执行此操作:

for x in range(-260,280,20):
    block.goto(x, x)
    block.stamp()

将在乌龟屏幕上绘制一面对角线的正方形墙。