ZetCode

Python Break 语句

最后修改于 2025 年 2 月 25 日

Python 中的 break 语句会提前终止最近的封闭循环。 本教程解释了如何使用 break 退出循环,演示了嵌套循环场景,并提供了流程控制的实际示例。

执行时,break 会立即停止循环迭代并将执行转移到循环后的第一个语句。 它适用于 forwhile 循环,提供了一种在满足特定条件时提前退出的方法。

使用 Break 退出循环

此示例显示了当值达到 5 时,break 如何终止 while 循环。

simple_break.py
count = 0

while True:
    print(count)
    count += 1
    if count == 5:
        break

print("Loop exited")  # Output: 0 1 2 3 4 Loop exited

该循环无限期运行,直到 count 达到 5。 break 语句会立即退出循环,跳过任何剩余的迭代。

For 循环中的 Break

此示例演示了如何在找到目标值时使用 break 提前退出 for 循环。

for_loop_break.py
fruits = ["apple", "banana", "cherry", "date"]

for fruit in fruits:
    if fruit == "cherry":
        break
    print(fruit)

# Output: apple banana

当遇到“cherry”时,循环停止迭代。 break 语句阻止处理“date”。

带 Break 的嵌套循环

此示例显示 break 仅退出嵌套结构中最内层的循环。

nested_break.py
for i in range(3):
    for j in range(5):
        print(f"i: {i}, j: {j}")
        if j == 2:
            break

# Output stops each inner loop at j=2

j 达到 2 时,内部循环中断,但外部循环继续执行。 外部循环的每次迭代都会触发一个新的内部循环。

While-Else 结构中的 Break

此示例演示了 break 如何影响循环中的 else 子句。

while_else_break.py
num = 7

while num > 0:
    print(num)
    num -= 1
    if num == 3:
        break
else:
    print("Loop completed normally")

print("After loop")  # Output: 7 6 5 4 3 After loop

仅当循环在没有遇到 break 的情况下完成时,才会执行 else 子句。 在这里,break 跳过了 else 块。

实际搜索示例

此示例使用 break 在找到匹配项时退出搜索循环。

search_break.py
temperatures = [22.5, 24.8, 19.3, 28.4, 31.0]
threshold = 30.0

for temp in temperatures:
    if temp > threshold:
        print(f"Temperature alert: {temp}°C")
        break
else:
    print("All temperatures within safe range")

# Output: Temperature alert: 31.0°C

循环检查每个温度,并在找到第一个超过阈值的值时触发警报。 如果没有超过的值,则执行 else 子句。

中断无限循环

此示例显示了 break 如何安全地退出原本无限的循环。

infinite_break.py
import time

start = time.time()

while True:
    print("Processing...")
    time.sleep(1)
    if time.time() - start > 5:
        print("Timeout reached")
        break

循环无限期运行,直到经过 5 秒。 break 提供了对原本无限循环的受控退出。

使用 Break 的最佳实践

来源

Python Break 语句文档

本教程通过实际示例探讨了 Python break 语句,演示了循环控制和提前终止场景。

作者

我叫 Jan Bodnar,是一位充满热情的程序员,拥有丰富的编程经验。 自 2007 年以来,我一直在撰写编程文章。 迄今为止,我撰写了 1,400 多篇文章和 8 本电子书。 我拥有超过十年的编程教学经验。

列出所有 Python 教程