Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/visual-studio-2010/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
python中四个大小不断增大的正方形_Python_Turtle Graphics - Fatal编程技术网

python中四个大小不断增大的正方形

python中四个大小不断增大的正方形,python,turtle-graphics,Python,Turtle Graphics,我试图用python生成一组四个正方形的图形表示。正方形的大小需要是20、40、60、80,并且需要像我提供的图像一样显示。我还提供了一些我已经尝试过的代码,虽然距离不太远,但并不正确 我尝试过使用一些不同的代码,但我真的很挣扎 有谁能告诉我哪里出了问题 编辑:按照米格尔的回答,我已经为我需要的产品制定出了正确的代码。但是,我需要从每个方块的左下角开始。然而,我的代码从左上角开始。你知道哪里不对吗 from turtle import * n = 4 for shape in range(1,

我试图用python生成一组四个正方形的图形表示。正方形的大小需要是20、40、60、80,并且需要像我提供的图像一样显示。我还提供了一些我已经尝试过的代码,虽然距离不太远,但并不正确

我尝试过使用一些不同的代码,但我真的很挣扎

有谁能告诉我哪里出了问题

编辑:按照米格尔的回答,我已经为我需要的产品制定出了正确的代码。但是,我需要从每个方块的左下角开始。然而,我的代码从左上角开始。你知道哪里不对吗

from turtle import *
n = 4
for shape in range(1, n+1):
for sides in range(1,5):
    forward(shape*20)
    right(90)

penup()
forward(10+shape*20) # move the pen forward 
right(90) # rotate down
forward(10+shape*20) # move forward now in downwards direction
left(90)
pendown()


您应该在绘制正方形之间移动,而不是在最后移动。还需要沿对角线移动,以生成与所需图像相似的图像

from turtle import *
n = 4
for shape in range(1, n+1):
    for sides in range(1,5):
        forward(30 + shape*10)
        right(90)

    penup()
    forward(40+ shape * 10) # move the pen forward 
    right(90) # rotate down
    forward(40 + shape * 10) # move forward now in downwards direction
    left(90)
    pendown()
我被要求从每个方块的左下角开始。 然而,我的代码从左上角开始。你知道它在哪里吗 错了吗

只是几个调整的问题:

from turtle import *

number_shapes = 4

for shape in range(1, number_shapes + 1):

    distance = shape * 20

    for sides in range(4):
        forward(distance)
        left(90)

    penup()
    forward(distance + 10)  # move the pen forward
    right(90) # rotate down
    forward(distance + 30)  # move forward now in downwards direction
    left(90)
    pendown()

hideturtle()

mainloop()

我们逆时针画正方形,而不是顺时针,并增加每次向下移动的量。

不要张贴代码图片。你需要把最后3行代码放在for循环中。我对编程和这个网站都是新手。它不允许我以文本形式发布代码,因为它说它的格式不正确。也许您可以在发布内容后再试一次。当您将代码作为文本粘贴到帖子中时,选择所有内容并按Ctrl-k设置格式,然后它将允许您发布。谢谢,这是工作的路线等,只需要发挥数字,使他们正确。我必须学习的材料非常有用vague@Woody89如果你觉得这对你有帮助,你可以在答案的左上角向上投票/选择正确答案。这离你不远了。方形尺寸需要为20、40、60和80,并在水平和垂直方向上与10个单位的间隙对齐