写循环时,你是否遇到过只想在满足某个条件时提前退出,而不是傻傻地跑完所有迭代?今天我们来聊聊 Python 中的循环控制利器——break。
一、break 是什么?
break 是 Python 中的循环控制关键字,它的作用很简单:立即终止当前所在的循环,程序流程跳到循环体之后的代码继续执行。
💡 一句话总结:遇到 break,循环立马"刹车",不再继续。
二、基本用法
1. 在 for 循环中使用
# 在列表中查找第一个偶数
numbers = [1, 3, 5, 8, 9, 10]
for num in numbers:
if num % 2 == 0:
print(f"找到第一个偶数:{num}")
break# 找到了,立即退出循环
print(f"{num} 不是偶数,继续查找...")
print("循环结束")
输出:
1 不是偶数,继续查找...
3 不是偶数,继续查找...
5 不是偶数,继续查找...
找到第一个偶数:8
循环结束
🔍 可以看到,找到 8 之后,循环立即终止,后面的 9 和 10 并没有被遍历。
2. 在 while 循环中使用
# 用户输入密码,最多尝试 3 次
attempts = 0
max_attempts = 3
correct_password = "python123"
while attempts < max_attempts:
password = input("请输入密码:")
attempts += 1
if password == correct_password:
print("✅ 密码正确,欢迎登录!")
break# 密码正确,跳出循环
else:
remaining = max_attempts - attempts
if remaining > 0:
print(f"❌ 密码错误,还剩 {remaining} 次机会")
else:
print("❌ 密码错误次数过多,账户已锁定")
print("程序结束")
三、break 与 continue 的区别
很多同学容易混淆 break 和 continue,一张图帮你搞清楚:
| | |
|---|
break | 终止整个循环 | |
continue | 跳过当前迭代 | |
# 对比示例
print("--- break 示例 ---")
for i in range(5):
if i == 3:
break# i=3 时直接退出
print(i) # 输出: 0, 1, 2
print("\n--- continue 示例 ---")
for i in range(5):
if i == 3:
continue# i=3 时跳过,继续下一次
print(i) # 输出: 0, 1, 2, 4
四、break 在嵌套循环中的行为
⚠️ 重要:break只会跳出它所在的那一层循环,不会跳出所有外层循环。
# 嵌套循环示例
for i in range(3):
print(f"外层循环 i = {i}")
for j in range(3):
if j == 1:
print(f" 内层遇到 break,j = {j}")
break# 只跳出内层循环,外层继续
print(f" 内层 j = {j}")
print(" 内层循环结束,回到外层")
print("所有循环结束")
输出:
外层循环 i = 0
内层 j = 0
内层遇到 break,j = 1
内层循环结束,回到外层
外层循环 i = 1
...
💡 如果需要跳出多层循环,可以使用:
五、实用场景总结
六、小练习
试着写出下面代码的输出结果:
for i in range(10):
if i > 5:
break
if i % 2 == 0:
continue
print(i, end=" ")
点击查看答案输出:1 3 5
解析:
总结
✅ break 用于立即终止循环✅ 只影响当前所在的那一层循环 ✅ 常与 if 条件配合使用,实现"找到即停"的逻辑 ✅ 不要与 continue 混淆