上一篇:Python流程控制语句之循环语句
文章目录
- 前言
- 一、break 语句
- 二、continue 语句
- 三、pass 空语句
- 总结
前言
上一篇博客我们讲解了Python中的循环语句,知道循环条件一直满足时,代码将会一直执行下去,就像一辆迷路的车,在某个地方不停的转圈。如果我们希望程序在这期间可以离开循环,有两种方法来做到:
- 使用 break 完全终止循环。
- 使用 continue 直接跳出本次循环,执行下次循环。
一、break 语句
break 语句可以终止当前的循环,包括 while 和 for 在内的所有控制语句。
举一个生活当中的栗子,比如以独自一人沿着操场跑步为例,原计划跑 5 圈。可是在跑到第 3 圈的时候,遇到自己的女神或者男神,于是果断停下来,终止跑步。
这就相当于使用了 break 语句提前终止了所有循环。break 语句的语法比较简单,只需要在相应的 while 或 for 语句中加入即可。
说明:break 语句一般会结合 if 语句进行搭配使用,表示在某种条件下,终止剩余的所有循环。如果使用嵌套循环,break 语句将终止最内层剩余的所有循环。
在 while 语句中使用 break 语句的形式如下:
while 条件表达式1:
执行代码
if 条件表达式2:
break
其中,条件表达式 2 用于判断何时调用 break 语句跳出循环。在 while 语句中使用 break 语句的流程如下图所示:
接下来我们通过 while 语句中使用 break 语句的嵌套方式来完成一个实战小案例:模拟10086查询功能。
全部代码如下:
print("------------10086自助查询功能------------", end="")
print("""
提示:
输入1,查话费余额
输入2,查剩余流量
输入0,退出查询
""")
while True:
num = int(input("请输入您要查询的数字: "))
if num == 1:
print("您的话费余额为150元")
if num == 2:
print("您的剩余流量为32.8GB")
if num == 0:
print("退出自助查询功能")
break
简单跟大家解释一下上述代码:代码中的前面两个print语句执行的功能是打印提示性话语;while True语句代表的是一个死循环,也就是该循环下面的循环体会一直执行下去;循环体里面的前两个 if 判断语句,用来和我们输入的数字作比较,如果满足条件,则执行该判断语句下面的语句体,因为是死循环,所以执行完继续输入数字作比较;最后一个if语句后面除了做判断作用外,加了 break 语句,也就是循环终止条件,如果我们输入的数字满足最后一个条件,那么除了执行下面的打印语句之外,死循环也将彻底终止,代码运行彻底结束。
程序运行之后效果如下图所示:
在 for 语句中使用 break 语句的形式如下:
for 迭代变量 in 对象:
if 条件表达式:
break
其中,条件表达式用于判断何时调用 break 语句跳出循环。在 for 语句中使用 break 语句的流程如下图所示:
接下来通过一个小题目来看看在 for 语句中使用 break 语句的用法。题目要求:从字符串 “我爱我的家乡” 这句话中找出第一个汉字 ‘我’,并且打印出来。
全部代码如下:
a = "我爱我的家乡"
for i in a:
if i == "我":
print("这是第一个'我'")
break
题目中要求我们只打印第一个汉字 ‘我’,但是如果使用了for循环语句 和 if选择语句,势必会打印出两次 ‘我’。所以在上述代码中加入了 break语句,当循环挨个遍历所有字符时,一旦第一次匹配到汉字 ‘我’,则打印在屏幕上,并且循环立即终止,不再往下循环,代码也立即运行结束。
程序运行之后结果如下图所示:
二、continue 语句
continue 语句的作用没有 break 语句强大,它只能终止本次循环而提前进入到下一次循环中。
仍然以独自一人沿着操场跑步为例,原计划跑步 5 圈。当跑到第 3 圈一半的时候,遇到自己的女神或者男神也在跑步,于是果断停下来,跑回起点等待,制造一次完美邂逅,然后从第 4 圈开始继续跑。
这就相当于使用了 continue 语句终止了本次循环,提前进入下次循环。continue 语句的语法比较简单,只需要在相应的 while 或 for 语句中加入即可。
说明:continue 语句一般会与 if 语句搭配使用,表示在某种条件下,跳过当前循环的剩余语句,然后继续进行下一轮循环。如果使用嵌套循环,continue 语句将只跳过最内层循环中的剩余语句。
在 while 语句中使用 continue 语句的形式如下:
while 条件表达式1:
执行代码
if 条件表达式2:
continue
其中,条件表达式 2 用于判断何时调用 continue 语句跳出循环。在 while 语句中使用 continue 语句的流程如下图所示:
接下来通过一个小题目来看看在 while 语句中使用 continue 语句的用法。题目要求:打印出0~10之间的所有奇数(要使用到while语句和continue语句)。
全部代码如下:
a = 0
while a < 10:
a += 1
if a % 2 == 0:
continue
print(a)
代码中设置了 变量a 的值为0,设置了循环的条件为 a<10;每循环一次,a的值加1,并且通过 if选择语句 挑选出所有的偶数,如果遇到偶数,则通过执行 continue语句 跳出此次循环,不再执行下面语句,如果是奇数,则正常都打印出来。
程序运行之后结果如下图所示:
在 for 语句中使用 continue 语句的形式如下:
for 迭代变量 in 对象:
if 条件表达式:
continue
其中,条件表达式用于判断何时调用 continue 语句跳出循环。在 for 语句中使用 continue 语句的流程如下图所示:
接下来通过一个小题目来看看在 for 语句中使用 continue 语句的用法。题目要求:从字符串 “我爱我的家乡” 这句话中找出除了汉字 ‘我’ 以外的所有文字,并且打印出来。
全部代码如下:
a = "我爱我的家乡"
for i in a:
if i == "我":
continue
print(i)
代码中使用了 for循环语句 遍历出字符串中的所有字符,使用 if选择语句 筛选出所有汉字 ‘我’,如果是遇到汉字 ‘我’,就执行 continue语句 跳出此次循环,进入下次循环,如果不是汉字 ‘我’,则正常打印出该字符。
程序运行之后结果如下图所示:
三、pass 空语句
在Python中还有一个 pass 语句,表示空语句,它不做任何事情,一般起到占位作用。例如,在应用 for 循环输出 1~20之间的奇数时,在不是奇数的时候可以使用 pass 语句占个位置,方便后期对不是奇数的数进行处理。代码如下:
for a in range(1, 20):
if a % 2 != 0: # 判断是否为奇数
print(a, end=" ")
else: # 不是奇数
pass # 占位符,不做任何事情
程序运行结果如下:
1 3 5 7 9 11 13 15 17 19
总结
以上就是今天跟大家介绍的Python流程控制中两种跳转语句:break语句 和 continue语句,以及 pass空语句。其中 break 和 continue 在开发中运用非常广泛,而且用法极为灵活,大家之后多加练习。
喜欢的都可以点赞+关注哦,这是对博主最大的支持