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的资料请关注脚本之家其它相关文章!
相关文章
详解PyQt5 GUI 接收UDP数据并动态绘图的过程(多线程间信号传递)
这篇文章主要介绍了PyQt5 GUI 接收UDP数据并动态绘图(多线程间信号传递),本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下2021-09-09
最新评论