break语句
break语句用于循环语句中(while,for),
其 作业就是结束循环,继续往下执行
break说明:
- 当break语句执行后,此循环语句break之后的语句将不再执行
- break通常搭配if语句组合使用
- 终止循环时,else子句的语句将不再执行
- break语句只能终止当前循环语句的执行,如果有循环嵌套 ,不会跳出嵌套的外层循环
举个栗子:
for i in range(1, 10):
if i == 5:
break
print(i)
以上栗子如果没有break,将打印1,2,3…9,但是当打印到5的时候突然遇到break给终止循环了,甚至5都没打印出来!为什么?
很简单,上边说道了,遇到break后后边的语句将不再执行,即i=5还没有机会打印就被消灭了,这个‘5’估计怎么消失的都不知道!!
break一般 用在死循环当中,当满足一定条件时结束死循环。
什么是死循环呢?为什么要使用死循环?
死循环就是在条件满足的情况下,会永无休止的运行下去,直到强制退出(包括手动退出,强制退出以及关机等操作),至于为什么使用死循环,那肯定就是不知道会循环多少次了,有可能10次?有可能100次。。。甚至更多次,在具体多少次不知道的情况下,我们只能使用死循环,然后当满足什么我们的需求时使用break强制退出循环。
举个栗子,如循环输入n(n为任意数)个整数,当不输入直接回车时结束输入,求这n个数的和
s = 0 # 用来求和
while True:
n = input('请输入一个数:')
if not n: # 输入回车结束循环(输入)
break
s += int(n)
print(s)
当然这个程序如果你输入不是数字的数据就会报错了,我们只针对说break,不去修改其他的bug。
如果不强制退出的话,我们将一直处在 “请输入一个数:”中,本来我们想计算十个任意数的和,结果现在都输入了100个甚至1000000个就是不给计算,竟然还让我们输入,我们骂它,可它听不懂,如此的话我们就狠一点,使用break强制退出来计算输入的任意个数的和。
其实最典型的栗子当属一个系统的输入姓名之类的信息吧。
continue语句
continue语句的作用:跳过当次循环
- 如果在while循环中使用,则跳过后重新返回真值表达式判断真值,为真继续执行,假则终止循环(这个终止不是break,而是条件已经不满足真值表达式了)
- 如果在for循环中使用,则跳过当次循环后继续下一次循环,直到不满足条件为止
注意:遇到continue,后边的语句将不再执行(仅限当前循环内,别处它还没有这个权力管人家的事)
continue比较好理解,不多说了
直接举个栗子:
打印从1-10的整数,但不打印5
for循环的写法:
for i in range(1, 11):
if i == 5:
continue
print(i, end=" ")
print()
# 打印结果是:1 2 3 4 6 7 8 9 10
while循环的写法:
i = 1
while i <= 10:
if i == 5:
i += 1
continue
print(i, end=' ')
i += 1
print()
使用while循环一定要控制好循环变量的值,否则稍有不慎就是一个死循环,比如此栗子的continue上边的i += 1,如果这个没写或者写在continue下边,就注定是一个死循环了,一直循环在5当中。。。
continue还可以使用在系统的类似于添加的功能中,如是否继续添加,是则continue,否则break,再如查询一个人的信息,输入姓名错误或不存在还可以继续输入,而不是直接退出。
好了,本章就到这