for i in range(7,0,-1):
for i in range(i-1):
print i,
print
以上代码打印:
0 1 2 3 4 5
0 1 2 3 4
0 1 2 3
0 1 2
0 1
0
我想摆脱前4行中的零。
答案 0 :(得分:2)
将范围设为1而不是默认值0:
for i in range(1, i-1):
print i,
而不是范围为i - 1
,调整外部循环以生成正确的值,但增加终点;产生1到1或1到0的范围几乎没有意义。
for i in range(6, 1, -1):
for i in range(1, i):
print i,
print
这样可以避免在最后打印太多空白换行符:
>>> for i in range(6, 1, -1):
... for i in range(1, i):
... print i,
... print
...
1 2 3 4 5
1 2 3 4
1 2 3
1 2
1
你也可以使用print i + 1
而不是从1开始;在这种情况下,递减外部循环中的值:
for i in range(5, 0, -1):
for i in range(i):
print i + 1,
print