我自己研究Python 3并且有一个我不理解这两个循环的问题:
a = [1,2,3,4,5]
for count,item in enumerate(a):
if count >= 3:
print(item)
# output: [4,5]
for count,item in enumerate(a):
if count >= 3:
print(item)
else:
break
# shows me nothing
这些有什么区别?
唯一的区别是else
和break
,其中一个显示我想要的,而另一个则没有。为什么只有第一个有效?
答案 0 :(得分:3)
break 语句结束循环。
当count = 0时,它转到else
。然后,for循环结束,它什么都不打印。
让我们更改一下你的代码以便更好地理解:
l = [a, b, c, d, e]
for count,item in enumerate(l):
if count >= 3:
print(item)
for count,item in enumerate(l):
if count >= 3:
print(item)
else:
break
以下是第一个循环的步骤:
count = 0,item = a
count = 1,item = b
count = 2,item = c
count = 3,item = d =>打印(d)
count = 4,item = e =>打印(e)中
以下是第二个循环的步骤:
count = 0,item = a => else =>破