我想打印一个嵌套循环,看起来像这样:编写打印在Python
1 2 3 4
5 6 7 8
9 10 11 12
这是我到目前为止有:
def main11():
for n in range(1,13)
print(n, end=' ')
然而, ,此输出数字在一行:1 2 3 4 5 6 7 8 9 10 11 12
我想打印一个嵌套循环,看起来像这样:编写打印在Python
1 2 3 4
5 6 7 8
9 10 11 12
这是我到目前为止有:
def main11():
for n in range(1,13)
print(n, end=' ')
然而, ,此输出数字在一行:1 2 3 4 5 6 7 8 9 10 11 12
你可以做使用字符串格式:
for i in range(1,13):
print '{:2}'.format(i),
if i%4==0: print
[OUTPUT]
1 2 3 4
5 6 7 8
9 10 11 12
非常感谢你! – user3307366
for n in range(1,13):
print(n, end=' ')
if n%4 == 0:
print
for offset in range(3):
for i in range(1,5):
n = offset*4 + i
print(n, end=' ')
print()
输出:
1 2 3 4
5 6 7 8
9 10 11 12
或者,如果你希望它很好地格式化您在您的文章有办法:
for offset in range(3):
for i in range(1,5):
n = offset*4 + i
print("% 2s"%n, end=' ')
print()
输出:
1 2 3 4
5 6 7 8
9 10 11 12
大多数情况下,当你编写for循环时,你应该检查这是否是正确的实现。 从你的要求,我会写这样的事:
NB_NB_INLINE = 4
MAX_NB = 12
start = 1
while start < MAX_NB:
print(("{: 3d}" * NB_NB_INLINE).format(*tuple(j+start for j in range(NB_NB_INLINE))))
start += NB_NB_INLINE
的可能重复[?如何使数字线路中断的名单在某一点(http://stackoverflow.com/questions/23556242/how-do-i-make-a-list-of-numbers-line-break-at-a-point) –