Python语法糖for else循环语句里的break使用详解
作者:wzhvictor
这篇文章主要介绍了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的资料请关注脚本之家其它相关文章!