我很困惑为什么' 0'我打印“i'”的值时从不打印。为什么是这样。
提前感谢您的帮助。
for i in range(0,10):
for z in range(i):
print([i], end=' ')
答案 0 :(得分:2)
因为range(0)
没有任何内容可供您进行迭代,因此您不必在这种情况下进行迭代:
for i in range(0): print(i)
什么都不打印,因为它就像在做:
for i in []: print(i)
并且您可以通过一些小实验来看到这一点:
>>> list(range(0))
[]
答案 1 :(得分:1)
python中的range函数yield /给出最多(但不包括)其参数的值。因此list(range(5))
将为[0,1,2,3,4]
,而list(range(0))
将为...... []
如果您要为此空白列表中的每个值打印i
,则根本不打印i
!
希望这会有所帮助,如果我没有说清楚,请告诉我!
答案 2 :(得分:0)
因为range(0)
会给[]
,所以它不会打印
答案 3 :(得分:0)
如果您修改代码如下:
for i in range(0, 10):
for z in range(0, i):
print([z], end=' ')
print('')
打印:
[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]