Python嵌套循环数模式输出附加行?

Python嵌套循环数模式输出附加行?,python,loops,nested-loops,Python,Loops,Nested Loops,我正在尝试创建一个专门用于循环的数字网格。我的代码如下 def draw_grid (num):#x represents row y representes column for x in range (num): print(x+1, end= ' ' ) print() for y in range (num): print(y+1, end= ' ' ) 例如,当我画一个10的网格时,我的输出结果是这样的。 1. 1 2 3 4 5 6 7 8

我正在尝试创建一个专门用于循环的数字网格。我的代码如下

def draw_grid (num):#x represents row y representes column
for x in range (num):
    print(x+1, end= ' ' )
    print()
    for y in range (num):
        print(y+1, end= ' ' )
例如,当我画一个10的网格时,我的输出结果是这样的。

1.
1 2 3 4 5 6 7 8 9 10 2 
1 2 3 4 5 6 7 8 9 10 3 
1 2 3 4 5 6 7 8 9 10 4 
1 2 3 4 5 6 7 8 9 10 5 
1 2 3 4 5 6 7 8 9 10 6 
1 2 3 4 5 6 7 8 9 10 7 
1 2 3 4 5 6 7 8 9 10 8 
1 2 3 4 5 6 7 8 9 10 9 
1 2 3 4 5 6 7 8 9 10 10 
12345678910


我尝试了几种不同的方法来处理它,但我无法辨别是什么在顶部创建了1,在最右边的列中创建了2-10?我的Y值是否应该采用不同的编码方式?

下面是发生的情况

def draw_grid (num):#x represents row y representes column
    for x in range (num):
        print(x+1, end= ' ' )
        print()
        for y in range (num):
            print(y+1, end= ' ' ) 
在外部循环中,您在没有换行的每次迭代中打印
x+1
end='
,然后打印新行,
print()
。在您的第一次迭代中,它的打印
1
,没有换行,然后是
print()
中的换行,然后它进入您的内部循环,再次打印
1-10
,最后没有换行。现在,当外部循环的第二次迭代发生时,它将打印
2
,这将在所有
y
值后面紧跟
print()

你最想要的是这个

def draw_g(num):
    for x in range(num):
        for y in range(num):
            print(y + 1, end = ' ')
        print()

draw_g(10)
这里我们只使用外部循环来确定行的数量,我们将打印内部循环中的所有值。对于我们的第一次迭代,我们在
范围(num)
中打印
y+1
的所有值。一旦完成,我们使用
print()
前进到下一行,然后进行外循环的第二次迭代,这对范围(num)
x重复 . 结果就是这样

1 2 3 4 5 6 7 8 9 10 
1 2 3 4 5 6 7 8 9 10 
1 2 3 4 5 6 7 8 9 10 
1 2 3 4 5 6 7 8 9 10 
1 2 3 4 5 6 7 8 9 10 
1 2 3 4 5 6 7 8 9 10 
1 2 3 4 5 6 7 8 9 10 
1 2 3 4 5 6 7 8 9 10 
1 2 3 4 5 6 7 8 9 10 
1 2 3 4 5 6 7 8 9 10 

这一行
print(x+1,end='')
您只是想在每一行上打印1到10吗?如果是,您可以删除
打印(x+1,end='')
。您想要的输出是什么?是的,就是这样。我想要的输出只是打印第1行到第10行10次,所以删除打印(x+1,end=“”)修复了我需要的内容。谢谢你,克尔伍德,斯莱德和瓦什,踩踏者谢谢你!我真的很感谢你的解释,因为我对编码很陌生!这更有意义。我有点责怪自己没有早点看到它,我感谢你的帮助@朱利安娜萨:我曾经站在你的立场上,这也是我遇到的问题,因此我能够解释,这是学习过程的一部分——哈,别打自己:)