gpt4 book ai didi

python - 如何创建 Turtle 克隆并将它们附加到列表中?

转载 作者:行者123 更新时间:2023-12-04 08:30:09 25 4
gpt4 key购买 nike

我想编写一个程序,在 3 行中绘制 5 个正方形。每隔一个方块是不同的颜色。
所以到目前为止我已经准备好了方块

sq1 = turtle.Turtle()
sq1.shape("square")
sq1.hideturtle()
sq1.color("red")
sq1.begin_fill()

sq2 = turtle.Turtle()
sq2.shape("square")
sq2.hideturtle()
sq2.color("black")
sq2.begin_fill()
可以想象,输入 15 个 clone.turtles 并为它们中的每一个输入不同的位置将花费很长时间。我的目标是为此创建一个简单的列表。只是我不知道如何将所有不同的方块放入列表以及如何设法将它们移动到不同的位置。

最佳答案

for 中创建 turtle 循环,并在每次迭代中将 turtle 附加到列表中。
您可以定义一个函数:

import turtle

def draw_squares(rows, cols, x=0, y=0, size=20):
colors = ['red', 'black']
square = []
for i in range(cols):
for j in range(rows):
t = turtle.Turtle('square')
t.penup()
t.shapesize(size / 20)
t.goto(i * size + x, j * size + y)
t.color(colors[(i + j) % 2])
square.append(t)
return squares

squares = draw_squares(3, 5, size=40)
输出:
enter image description here
哪里 xy是左下角正方形中心的坐标, size是每个正方形的像素大小, rowscols是棋盘中的行数和列数。
更新
根据评论中的要求,以下是我们如何更改每个矩形之间的宽度、高度和间距:
import turtle

def draw_squares(rows, cols, x=-170, y=0, w=80, h=40, space=5):
colors = ['red', 'black']
square = []
for i in range(cols):
for j in range(rows):
t = turtle.Turtle('square')
t.penup()
t.shapesize(h / 20, w / 20)
t.goto(i * space + i * w + x,j * space + j * h + y)
t.color('white', colors[(i + j) % 2])
square.append(t)
return squares

squares = draw_squares(3, 5)
输出:
enter image description here
哪里 w是宽度, h是高度和 space是间距。

关于python - 如何创建 Turtle 克隆并将它们附加到列表中?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/65066313/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com