在上一节中,我们学习了
for和while循环的基本语法。 循环让程序能够重复执行任务,但有时我们希望:
- 提前结束循环(例如找到目标就停止);
- 跳过某些不需要处理的情况;
- 或者在循环正常结束后执行额外逻辑。
Python 提供了三种循环控制语句来实现这些功能: 👉 break、continue 和 else。
一、break ------ 立即终止循环
✅ 作用
break 用于 提前结束整个循环, 无论循环条件是否还成立。
📘 基本语法
python
for 变量 in 可迭代对象:
if 条件:
break
代码块
或
python
while 条件:
if 条件:
break
代码块
示例 1:查找并终止
python
for i in range(1, 10):
print(f"检查数字 {i}")
if i == 5:
print("找到目标,结束循环!")
break
输出:
检查数字 1
检查数字 2
检查数字 3
检查数字 4
检查数字 5
找到目标,结束循环!
一旦执行
break,循环立即终止,不再执行后续迭代。
示例 2:while 循环中的 break
python
i = 1
while i <= 10:
if i == 6:
break
print("当前 i =", i)
i += 1
输出:
ini
当前 i = 1
当前 i = 2
当前 i = 3
当前 i = 4
当前 i = 5
实战:用户输入退出指令
python
while True:
cmd = input("请输入命令(exit退出):")
if cmd == "exit":
print("程序已结束。")
break
print(f"你输入了:{cmd}")
运行示例:
bash
请输入命令(exit退出):hello
你输入了:hello
请输入命令(exit退出):exit
程序已结束。
二、continue ------ 跳过当前循环
✅ 作用
continue 用于 跳过当前循环中的剩余代码, 直接进入下一次循环判断。
📘 基本语法
python
for 变量 in 可迭代对象:
if 条件:
continue
代码块
或
python
while 条件:
if 条件:
continue
代码块
示例 1:跳过特定数字
python
for i in range(1, 6):
if i == 3:
continue
print("当前数字:", i)
输出:
当前数字: 1
当前数字: 2
当前数字: 4
当前数字: 5
当 i = 3 时,
continue让程序直接跳到下一次循环, 因此不会执行print()。
示例 2:统计偶数个数
python
count = 0
for i in range(1, 11):
if i % 2 != 0:
continue # 跳过奇数
count += 1
print("1~10 之间的偶数数量:", count)
输出:
1~10 之间的偶数数量: 5
示例 3:while 中的 continue
python
i = 0
while i < 5:
i += 1
if i == 3:
continue
print("i =", i)
输出:
ini
i = 1
i = 2
i = 4
i = 5
注意:
while循环中使用continue时,一定要保证循环变量仍能更新 , 否则可能会造成死循环。
三、else ------ 循环的"善后处理"
✅ 作用
Python 中的循环可以带 else 语句, 当循环 正常结束(未被 break 打断) 时,执行 else 块。
这在"查找类任务"中非常有用, 可以在没找到目标时执行额外操作。
示例 1:for...else
python
for i in range(1, 5):
print("检查数字", i)
if i == 10:
break
else:
print("循环正常结束,未找到目标")
输出:
检查数字 1
检查数字 2
检查数字 3
检查数字 4
循环正常结束,未找到目标
示例 2:while...else
python
i = 1
while i < 5:
print(i)
i += 1
else:
print("循环结束,没有触发 break。")
输出:
kotlin
1
2
3
4
循环结束,没有触发 break。
示例 3:break 与 else 的配合使用
python
nums = [3, 8, 15, 20, 33]
for n in nums:
if n % 7 == 0:
print("找到能被7整除的数:", n)
break
else:
print("未找到能被7整除的数")
输出:
未找到能被7整除的数
因为没有触发
break,所以执行了else。
四、三者对比总结
| 控制语句 | 作用 | 执行效果 | 常用场景 |
|---|---|---|---|
break |
终止循环 | 立即退出循环 | 提前结束循环任务 |
continue |
跳过本次循环 | 不执行本次循环的剩余语句,直接进入下一次循环 | 跳过不符合条件的数据 |
else |
正常结束时执行 | 仅在未被 break 打断时执行 | 查找任务、检测循环是否完整执行 |
五、综合案例:搜索学生成绩
python
students = {
"张三": 85,
"李四": 90,
"王五": 78
}
target = input("请输入要查询的学生姓名:")
for name, score in students.items():
if name == target:
print(f"{name} 的成绩是 {score} 分。")
break
else:
print("未找到该学生。")
运行示例:
请输入要查询的学生姓名:李四
李四 的成绩是 90 分。
或
请输入要查询的学生姓名:赵六
未找到该学生。
六、小结
| 控制语句 | 关键特性 |
|---|---|
break |
立即结束循环 |
continue |
跳过当前循环,继续下一次 |
else |
仅当循环"正常结束"时执行 |
✅ 一句话总结
break是"终止",continue是"跳过",else是"收尾"。 掌握这三者,你的循环将更加灵活与智能。