VB.net 2010 视频教程 VB.net 2010 视频教程 python基础视频教程
SQL Server 2008 视频教程 c#入门经典教程 Visual Basic从门到精通视频教程
当前位置:
首页 > Python基础教程 >
  • Python语法糖for else循环语句里的break使用详解

python循环语句
在Python中的while或者for循环之后还可以有else子句,作用是for循环中if条件一直不满足,则最后就执行else语句。

for i in range(5):
    if i == 1:
        print 'in for'
else:
    print 'in else'
print 'after for-loop'
# in for
# in else
# after for-loop

但我们发现if条件在循环的过程中成立了,最终还是执行了else语句里的内容,这是为什么呢?

好的,我们这时看下面这段程序:

for i in range(5):
    if i == 1:
        print 'in for'
        break
else:
    print 'in else'
print 'after for-loop'
# in for
# after for-loop

我们在if里添加了一个break,这是因为else是在for后执行的,但只有for循环正常退出时才会执行else语句(不是由break结束循环)。而当循环是由break语句中断时,else就不被执行。

添加一个flag
for/else等效于下面这段代码,可以类似C语言那样添加一个flag:

found = False
for i in range(5):
    if i == 1:
        found = True
        print 'in for'
if not found:
    print 'not found'
print 'after for-loop'
# in for
# after for-loop

与for语句相似,while语句中的else子句用法是一样的,else块在循环正常结束和循环条件不成立时执行。

以上就是Python语法糖——for/else循环语句里的break的详细内容,更多关于Pythonfor/else循环语句break的资料请关注其它相关文章!

原文链接:https://segmentfault.com/a/1190000004903355


相关教程