Python 这两个循环之间的差异

Python 这两个循环之间的差异,python,python-3.x,Python,Python 3.x,我正在自学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 m

我正在自学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
,一个显示我想要什么,而另一个不显示。为什么只有前一个起作用?

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
以下是第一个循环的步骤:

计数=0,项目=a

计数=1,项目=b

计数=2,项目=c

计数=3,项目=d=>打印(d)

计数=4,项目=e=>打印(e)

以下是第二个循环的步骤:


count=0,item=a=>else=>break

你知道
break
做什么吗?如果是,你的问题是什么?如果没有,那么用谷歌搜索它,例如是的,唯一的区别是
else
break
。它们是没有印刷的原因。也许你的意思是通过而不是中断(虽然那是毫无意义的)