在这段代码中,我假设在一个正方形内重复一个100正方形。
import turtle
num_squares = 100
turtle.pendown()
side = side_unit = 5
for sq in range(1, num_squares + 1):
turtle.left(90)
turtle.forward(side)
turtle.left(90)
turtle.forward(side)
turtle.left(90)
turtle.forward(side)
turtle.left(90)
side = side_unit + 3 * sq
turtle.goto(0,0)
turtle.done()
我可以使用它,但是我很难理解为什么它适用于生产线:
side = side_unit + 3 * sq
为什么将side_unit + 3 * sq
乘以一个新的正方形?
答案 0 :(得分:0)
为了使理解更简单,我将定义一个用于绘制单个正方形的函数。
def draw_square(side_length):
""" Draw a square with given side length and return to origin """
for i in range(3):
turtle.left(90)
turtle.forward(side_length)
turtle.left(90)
turtle.goto(0, 0)
简化了循环:
for sq in range(1, num_squares + 1):
draw_square(side)
side = side_unit + 3 * sq
每个循环绘制一个边长为side
的正方形。由于sq
每次循环迭代都会增加1,因此side_unit + 3 * sq
每次迭代都会增加3。您为此设置了side
(即正方形的边长),这意味着正方形的边长将在每次迭代中增加3。