在 Python 中,continue
语句是循环控制的关键工具之一,它的核心作用是跳过当前迭代的剩余代码,直接进入下一次循环。以下是详细说明和示例:
一、基础行为
- 立即结束本次循环:当
continue
被执行时,当前迭代的剩余代码会被跳过,程序会直接检查循环条件,决定是否开始下一次循环。 - 仅影响当前层循环:在嵌套循环中,
continue
只会终止当前所在的循环层。
二、代码示例
示例 1:跳过特定值
for num in [1, 2, 3, 4, 5]:
if num == 3:
continue # 跳过数字3的处理
print(f"当前数字: {num}")
输出:
当前数字: 1
当前数字: 2
当前数字: 4
当前数字: 5
示例 2:处理异常数据
data = [10, 25, "error", 40, 55]
for item in data:
if item == "error":
print("遇到无效数据,跳过...")
continue # 跳过错误数据
print(f"处理数据: {item * 2}")
输出:
处理数据: 20
处理数据: 50
遇到无效数据,跳过...
处理数据: 80
处理数据: 110
三、continue
vs break
特性 | continue | break |
---|---|---|
行为 | 跳过当前迭代,进入下一次循环 | 立即终止整个循环 |
循环终止 | 否 | 是 |
典型场景 | 过滤特定值 | 提前终止搜索/处理 |
四、注意事项
-
避免无限循环(
while
循环中):count = 0 while count < 5: count += 1 if count == 3: continue # 正确:count 已自增,不会死循环 print(count)
-
嵌套循环中的行为:
for i in range(2): for j in range(3): if j == 1: continue # 仅跳过内层循环的当前迭代 print(f"({i},{j})")
输出:
(0,0) (0,2) (1,0) (1,2)
五、典型应用场景
- 数据清洗:跳过无效/异常值
- 条件过滤:仅处理符合特定条件的数据
- 性能优化:减少不必要的计算(如提前跳过不符合条件的分支)
六、进阶用法:结合 else
子句
for num in [2, 4, 6, 8]:
if num % 3 == 0:
print(f"找到3的倍数: {num}")
break
else:
print("未找到3的倍数") # 仅当循环完整执行(未被break终止)时执行
输出:
未找到3的倍数
通过合理使用 continue
,可以使循环逻辑更清晰,代码更简洁。但需注意避免过度使用导致可读性下降。