第 17 课 · 阶段二 · 基础语法

break / continue / else

循环控制三件套:break 提前退出、continue 跳过本轮、else 标记正常结束。这一课把它们一次讲清。

第 17 课阶段二 · 基础语法难度:入门建议时长:25 分钟关键词:break · continue · 循环else

🎯 学完本课你将掌握

  • 理解并正确使用 break
  • 理解并正确使用 continue
  • 掌握循环 else 的触发时机

一、break:立刻跳出整个循环

break 用法.py
1for i in range(1, 10):
2 if i == 5:
3 print("遇到5,提前退出")
4 break
5 print(i, end=" ")
6# 输出:1 2 3 4 遇到5,提前退出

二、continue:跳过本轮,继续下一轮

continue 用法.py
1for i in range(1, 8):
2 if i % 2 == 0:
3 continue # 偶数直接跳过
4 print(i, end=" ")
5# 输出:1 3 5 7(只打印奇数)

三、break vs continue 对比

语句作用典型场景
break终止整个循环找到目标就停止查找
continue跳过本次,进入下一次跳过非法数据继续处理

四、循环 else:没被 break 才执行

循环 else.py
1# 找 7 是不是质数
2n = 7
3for i in range(2, n):
4 if n % i == 0:
5 print(n, "不是质数")
6 break
7else:
8 print(n, "是质数") # 循环没被break打断,走这里
✅ 要点
for/while 后面的 else 很 Pythonic:它只在循环“自然结束”(没遇到 break)时执行,非常适合判断“是否找到/是否完成”。

五、综合实战:遍历字符串找目标

查找字符.py
1s = "python programming"
2target = "o"
3found = False
4for ch in s:
5 if ch == target:
6 print(f"找到了字符 {target}")
7 found = True
8 break
9if not found:
10 print(f"没找到 {target}")

六、常见错误与解决

常见错误与解决

错误现象原因 / 解决方法
break 放错了地方break 只能跳出它所在的最内层循环;想跳出多层循环可用标志变量或封装成函数 return。
continue 导致死循环while 循环里 continue 前忘改变条件,会一直跳过。先计数再 continue。
else 结果和预期相反检查是否有 break 走到了 else:break 触发则 else 不执行,这是设计好的。
✍️ 小练习
写程序:用户不断输入数字,输入 0 时 break 退出并输出总和;再用 continue 实现“只统计输入中的正数之和”。
📌 本节小结
break 立刻跳出循环、continue 跳过本轮、else 标记“没被 break 的正常结束”。三者配合能写出清晰高效的循环逻辑,是第 50 课项目里会反复用到的技巧。