Python编程实战 · 基础入门篇 | 循环控制:break / continue / else

在上一节中,我们学习了 forwhile 循环的基本语法。 循环让程序能够重复执行任务,但有时我们希望:

  • 提前结束循环(例如找到目标就停止);
  • 跳过某些不需要处理的情况;
  • 或者在循环正常结束后执行额外逻辑。

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 是"收尾"。 掌握这三者,你的循环将更加灵活与智能。


相关推荐
大阿明3 小时前
Spring Boot(快速上手)
java·spring boot·后端
墨香幽梦客4 小时前
API集成技术规范:RESTful与GraphQL在企业系统对接中的应用对比
后端·restful·graphql
刀法如飞5 小时前
AI编程时代,为什么35岁以上程序员会更吃香?
人工智能·后端·ai编程
小码哥_常5 小时前
Spring Boot 遇上 HMAC-SHA256,API 安全大升级!
后端
小码哥_常5 小时前
10分钟极速掌握!SpringBoot+Vue3整合SSE实现实时消息推送
后端
大黄说说6 小时前
深入 Go 语言 GMP 调度模型:高并发的秘密武器
后端
云原生指北7 小时前
Omnipub E2E 测试文章 - 自动化验证
后端
IT_陈寒7 小时前
SpringBoot自动配置揭秘:5个让开发效率翻倍的隐藏技巧
前端·人工智能·后端
添尹8 小时前
Go语言基础之数组
后端·golang
luom01029 小时前
SpringBoot - Cookie & Session 用户登录及登录状态保持功能实现
java·spring boot·后端