循环终止
19.1 break
break可以用来终止循环,立即退出循环语句(包括else)。
先来看一个示例:创建一个5次的循环。
i=0
while i < 5 :
print(i)
i += 1
else :
print('循环结束')
执行结果为:
接下来我们为该循环语句加上break,再来看一下效果:
i=0
while i < 5 :
if i == 3 :
break
print(i)
i += 1
else :
print('循环结束')
执行结果为:
只显示了‘0’、‘1’、‘2’,因为当i=3的时候,循环遇到了break被结束了,包括else后面的语句也一起不执行。
19.2 continue
continue用来跳过当次循环。
还是用上面的例子:创建一个5次的循环。
i=0
while i < 5 :
print(i)
i += 1
else :
print('循环结束')
执行结果为:
接下来我们为程序加上continue语句:
i=0
while i < 5 :
if i == 3 :
continue
print(i)
i += 1
else :
print('循环结束')
执行结果为:
这个结果和我们想象中有点不一样,continue终止的应该是本次循环,但是后面的4也不出现了。检查下程序哪里出了问题,会发现是continue语句写在了上面,后面的print语句和i自增的语句默认为continue的当次循环语句,所以也不再执行了,我们将循环更新的条件放到上面。
i=0
while i < 5 :
i += 1
if i == 3 :
continue
print(i)
else :
print('循环结束')
执行结果为:
当i=3的时候,循环语句跳过了,直接执行了下次循环。
将continue改成break再看下:
i=0
while i < 5 :
i += 1
if i == 3 :
break
print(i)
else :
print('循环结束')
执行结果为:
结束了整个循环。
综上所述:break用来终止整个循环,包括else语句,而continue用来终止当次循环,程序会跳过当次循环,进入下一次。注意:如果有多层循环嵌套,两者都是只对离它最近的循环体起作用。
第二十节:如何用一行代码让运行速度提升10倍