- 1、 break
- 示例
- 练一练
- 2、 for ……else
- 示例一
- 示例二
- 读一读
- 改一改
- 读一读2
- 使用else改写之前的例子
- 练一练
- 3、continue
- 示例
- 练一练
- 4、pass语句
在执行循环时要进行条件判断,只有在条件为“假”时,才能结束循环。但是,有时根据实际情况需要停止整个循环或是跳到下一次循环,有时需要从程序的一部分跳到程序的其他部分,这些都可以由跳转语句来完成。 Python支持三种形式的跳转: break、 continue、 return。
- 使用break完全中止循环。
- 使用continue语句直接跳到循环的下一次迭代。
描述4000米长跑比赛
i = 0
while i < 10:
跑400米
if 不能坚持:
break #退出比赛
break语句可以终止当前的循环,包括while和for在内的所有控制语句。break语句一般会结合if语句进行搭配使用,表示在某种条件下,跳出循环。
while 条件表达式1: 执行代码 if 条件表达式2: break
for 迭代变量 in 对象: if 条件表达式: break示例
循环录入某学生5门课的成绩并计算平均分,如果某分数录入为负,停止录入并提示录入错误。
(1)1~10之间的整数相加,得到累加值大于20的当前数。
(2)今有美酒若干坛,然不知其数,三三数之剩二,五五数之剩三,七七数之剩二,问几何?使用for循环和break实现。
for循环可以和else搭配使用。但else 语句是不能脱离其他语句单独存在的。
for 临时变量 in 列表或者字符串等:
循环满足条件时执行的代码
else:
循环不满足条件时执行的代码
示例一
for i in range(3):
print(i)
else:
print('else content')
结果如下:
0 1 2 else content
得出结论:for 循环正常执行结束后,else 语句里面的内容也会正常执行。
示例二for i in range(3):
break
else:
print('else content')
无任何输出。
得出结论:当 for 循环被 break 中断后,其后的 else 语句就不执行了。
在for 循环中,如果没有从任何一个break中退出,则会执行和for对应的else只要从break中退出了,则else部分不执行。
for i in range(10):
if i == 5:
print('found it! i = {}'.format(i))
else:
print('not found it ...')
你期望的结果是,当找到5时打印出:
found it! i = 5
实际上打印出来的结果为:
found it! i = 5 not found it ...
显然这不是我们期望的结果。
当迭代的对象迭代完并为空时,位于else的子句将执行,而如果在for循环中含有break时则直接终止循环,并不会执行else子句。
所以正确的写法应该为:
(1)使用程序模拟10000米比赛。
3、continue
continue的作用:用来结束本次循环,紧接着执行下一次的循环。所以continue可以加速循环。
continue语句的语法比较简单,只需要在相应的while或for语句中加入即可。
continue语句一般会与if语句搭配使用,表示在某种条件下,跳过当前循环的剩余语句,然后继续进行下一轮循环。
while 条件表达式1: 执行代码 if 条件表达式2: continue
for 迭代变量 in 对象: if 条件表达式: continue示例
循环录入Python课的学生成绩,统计分数大于等于80分的学生比例。
(1)求1~10之间的所有偶数和。
(2)求1~100之间不能被3整除的数之和。
(3)求1~100之间个位数字不是2、3、4、7,并且不能被3整除的整数之和。
(4) “逢七拍腿游戏”
游戏规则是每个员工从1开始依次数数,当数到尾数是7的数或7的倍数时,则该员工不报出该数,而是拍一下腿。凡是出错的员工将会受到小惩罚——做10个俯卧撑。假设在一次游戏中,参加活动的员工循环报数,从1数到99,每个人都没有出错,即无人受到惩罚。现在编写程序,在本次游戏中,计算员工一共要拍多少次腿。
在Python中还有一个pass语句,表示空语句。它不做任何事情,—般起到占位作用。例如,在应用for循环输出1〜10之间(不包括10)的偶数时,在不是偶数时,应用pass语句占个位置,方便以后对不是偶数的数进行处理。
for i in range(1,10): if i%2 == 0: #判断是否为偶数 print(i,end = ' ') else: #不是偶数 pass #占位符,不做任何事情



