我正在尝试创建一个专门用于for循环的数字网格。我的代码如下
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
1 2 3 4 5 6 7 8 9 10
我试过用几种不同的方法来处理它,但是我看不出是什么在顶部创建了1,在最右边的列中创建了2-10?我的Y值应该用不同的编码吗
这就是正在发生的事情
在外循环中,您在每个迭代中打印
x + 1
,没有换行,end = ' '
,然后打印一个新行,print()
。在您的第一次迭代中,它的打印1
没有换行,后面是来自print()
的换行,然后它进入您的内部循环,再次打印1-10
,最后没有换行。现在,当外部循环的第二次迭代发生时,它将打印2
,这将在所有y
值后面紧跟print()
之后打印,并且该过程将重复你最想要的是这个
在这里,我们只使用外部循环来确定行的数量,我们将打印内部循环中的所有值。对于我们的第一次迭代,我们在
range(num)
中打印y + 1
的所有值一旦完成,我们使用print()
前进到下一行,然后发生外循环的第二次迭代,这对x in range(num)
重复 . 结果就是这样相关问题 更多 >
编程相关推荐