我在python编程课程的介绍中需要帮助,需要一个代码,它将使用两个'for-loops'打印以下内容,一个是嵌套的:
0
0 1
0 1 2
0 1 2 3
0 1 2 3 4
0 1 2 3 4 5
0 1 2 3 4 5 6
0 1 2 3 4 5 6 7
0 1 2 3 4 5 6 7 8
0 1 2 3 4 5 6 7 8 9
到目前为止,我已经提出了以下代码,但我的数字三角形从数字1开始而不是0:
for i in range(-1,9):
print ('\n')
for i in range (int(i+1)):
j = i+1
print (j, end=' ')
任何人都可以建议我应该怎样做才能使我的数字列表从0而不是1开始?还有关于如何使我的代码更具可读性的任何建议?感谢。
答案 0 :(得分:2)
使用range
时,如果要包含最后一个整数,则需要添加一个。考虑到这一点,我认为以下内容是有道理的:
for i in range(9+1): # +1 since you want the loop to include 9
for j in range(i+1): # +1 since you want your print to include i
print (j, end=' ')
print ('\n')
print(\n)
语句可以在j
for循环之前或之后,尽管输出会略有不同。 (也许是因为我习惯使用机械打字机,我认为\n
完成了一条线,而不是为新的线做好准备,但两者都是合理的。)
我不喜欢从-1
开始,因此您可以稍后添加1
。这是一个过分复杂的习惯,也是一个从初学者开始的坏习惯。
答案 1 :(得分:0)
保持代码结构,以下内容将起作用:
for i in range(-1, 10): # you need 10 so that the triangle goes up to 9
print("\n")
for j in range(i + 1):
print(j, end=" ")
结果:
0
0 1
0 1 2
0 1 2 3
0 1 2 3 4
0 1 2 3 4 5
0 1 2 3 4 5 6
0 1 2 3 4 5 6 7
0 1 2 3 4 5 6 7 8
0 1 2 3 4 5 6 7 8 9