安迪Python
2022/12/14阅读:38主题:默认主题
47.continue终止本次循环进入下一次循环
47.continue终止本次循环进入下一次循环
1. 循环控制
在循环的过程中如果要退出循环,我们可以用break语句和continue语句。
2.continue的作用
continue [kənˈtɪnjuː] :继续。
continue 单词的中文意思是继续。
【作用】
continue在Python中的作用是跳出本轮循环,继续下一次循环。
【使用方法】
当循环代码中的某个条件被满足后,执行该条件下面的continue语句。
这时,程序会跳过本轮循环中剩余的代码,继续开始下一次的循环。
3. 语法
if 条件表达式:
continue
【温馨提示】
break语句和continue语句只能写在循环里面。
4. 实操练习
【目标任务】
我做了4套Python考试卷,统计输出4套试卷中不及格的成绩(即输出小于60的数)。
【编写思路】
如果成绩大于等于60,不输出该成绩。
如果成绩小于60,输出该成绩。
要判断成绩是否大于等于60用if条件判断语句。
成绩总共有4次,就需要依次取出成绩和60比较。
依次取值用for循环。
大于等于60就不输出,就是满足某个条件就不执行某行代码,用continue语句来实现。
【体验代码】
# 新建一个列表存储我的考试成绩
score_list = [80, 44, 55, 99]
# 用for循环从列表中取值赋值给变量i
for i in score_list :
# 如果i大于等于60
if i >= 60 :
# 满足上述条件,执行continue语句
# 执行continue则跳出该循环,不执行下面的print语句
continue
# 否则
else:
# 输出i
print(i)
【终端输出】
44
55
【代码解析】
【第1次循环】
-
for i in score_list :
表示从列表score_list中取值,取出的值赋值给变量i
。第1次取值i=80。 -
if i >= 60 :
判断i是否大于等于60。此时的i=80,大于60。if条件判断语句成立,执行continue语句,即结束此次循环。结束此次循环的意思就是执行continue,不执行print(i),程序返回for i in score_list :
继续执行第2次循环。 -
continue和print(i)是对立的,执行continue就不执行print(i)。
【第2次循环】
-
for i in score_list :
从列表score_list中取值,取出的值赋值给变量i,此时i=44
。 -
if i >= 60 :
i=44不大于60,if条件判断语句不成立。 -
条件不成立则不执行continue语句。
-
执行
print(i)
,终端输出44。
【第3次循环】
-
for i in score_list :
从列表score_list中取值,取出的值赋值给变量i,此时i=55。 -
if i >= 60 :
i=55不大于60,if条件判断语句不成立。 -
条件不成立则不执行continue语句。
-
执行
print(i)
,终端输出55。
【第4次循环】
-
for i in score_list :
从列表score_list中取值,取出的值赋值给变量i,此时i=99。 -
if i >= 60 :
i=99大于60,if条件判断语成立。 -
条件成立则执行continue语句。
-
执行continue语句就不执行
print(i)
。
5. 知识扩展:print的位置
# 新建一个列表存储我的考试成绩
score_list = [80, 44, 55, 99]
# for 循环依次输出成绩
for i in score_list :
# if 判断是否小于60
if i >= 60 :
# 大于等于60,则跳出该循环,不执行下面的print 语句
continue
print(i)
【终端输出】
99
上面代码的print(i)
的位置与for循环语句是对齐的。
上述列表有4个元素,即for循环要执行4次。
for循环语句里没有缩进的print,因此for循环没有任何输出。
for循环结束后,才执行print(i)
。
第4次循环变量i
取到的值是99,循环结束后i
的值就是99,因此上面的代码终端输出的结果为99。
循环语句中一定要重点关注print的位置,这是初学者无法输出指定内容最常犯的错误。
6. continue语句循环图

备注:图片来源于书籍《看漫画学Python》。
7. 课堂练习
【任务目标】
使用for循环语句输出1-10中的偶数,并存储到一个列表中。
【1.先完成输出偶数的代码】
【思路分析】
偶数就是除以2余数为0的数。
是偶数,输出该数字。
不是偶数,不输出。
# 用range(1, 11)可以生成1到10的序列
# 用for循环从range(1, 11)中取值并赋值给变量i
for i in range(1,11) :
# 如果i除以2的余数不等于0
if i % 2 != 0:
# 执行continue语句,结束此次循环
continue
# 否则
else:
#输出该数
print(i)
print("程序结束!")
【终端输出】
2
4
6
8
10
程序结束!
%
是取余的意思。
print(7%2)
print(8%3)
print(8%4)
【终端输出】
1
2
0
7/2商为3,余数为1。
8/3商为2,余数为2。
8/4商为2,余数为0。
【2.将输出的数存储到列表中】
# 新建一个空列表用于存储输出的数据
# 列表用英文中括号表示
list_1 = [ ]
# 用range(1, 11)可以生成1到10的序列
# 用for循环从range(1, 11)中取值并赋值给变量i
for i in range(1,11) :
# 如果i除以2的余数不等于0
if i % 2 != 0:
# 执行continue语句,结束此次循环
continue
# 否则
else:
# 将该数添加到列表list_1中
list_1.append(i)
# 最后输出列表list_1
print(list_1)
print("程序结束!")
【终端输出】
[2, 4, 6, 8, 10]
程序结束!
8.知识回顾
append [əˈpend]增加,附加。
append的中文意思是增加。
【语法】
列表名.append(要增加的元素)
# 创建列表 name_list
name_list = ['张三', '李四']
# 用 append()函数给列表 name_list 添加一个元素 '王五'
# 列表名.append(要增加的元素)
name_list.append('王五')
# 输出 name_list 列表
print(name_list)
【终端输出】
['张三', '李四', '王五']
作者介绍