当前位置:首页>python>Python 循环进阶:break / continue / 循环 else / 循环嵌套

Python 循环进阶:break / continue / 循环 else / 循环嵌套

  • 2026-09-17 17:18:13
Python 循环进阶:break / continue / 循环 else / 循环嵌套

一、break 语句(终止整个循环)

1. 作用

立即结束当前所在的循环,跳出循环体,继续执行循环后面的代码。
不管循环条件是否还满足,直接强行终止。

2. 语法

while 条件:
    ...
break

for 变量 in 可迭代对象:
    ...
break

3. while + break 示例

i = 1
while i <= 10:
if i == 5:
break# 满足条件就直接结束循环
print(i)
    i += 1

print("循环结束")

运行结果:

1
2
3
4
循环结束

4. for + break 示例

for i inrange(1, 11):
if i == 6:
break
print(i)

运行结果:

1
2
3
4
5

5. 多层循环中的 break

break 只跳出自己所在的那一层循环,不会跳出外层循环。

for i inrange(3):
for j inrange(3):
if j == 2:
break
print(i, j)

二、continue 语句(跳过本次循环)

1. 作用

跳过本次循环剩下的代码,直接进入下一次循环的条件判断。
循环并没有结束,只是“这一次不执行了”。

2. 语法

while 条件:
    ...
continue
    ...  # 这部分代码不会执行

for ...:
    ...
continue
    ...

3. while + continue 示例

i = 0
while i < 5:
    i += 1
if i == 3:
continue# 跳过本次,不执行 print
print(i)

运行结果:

1
2
4
5

4. for + continue 示例

for i inrange(1, 6):
if i == 2:
continue
print(i)

运行结果:

1
3
4
5

5. 易错点:while 中使用 continue 容易死循环

i = 0
while i < 5:
if i == 3:
continue# i 不再更新,卡死在这里
print(i)
    i += 1

⚠️ 一定要在 continue 之前更新循环变量。


三、循环与 else 配合(非常重要)

1. 作用

else 跟在循环后面,当循环正常结束时执行。
如果循环是被 break 打断的,则 else 不执行。

2. 语法

while 条件:
    ...
else:
    循环正常结束后执行

for ...:
    ...
else:
    循环正常结束后执行

3. 示例:循环正常结束 → else 执行

for i inrange(3):
print(i)
else:
print("循环正常结束,没有被 break")

结果:

0
1
2
循环正常结束,没有被 break

4. 示例:break 打断 → else 不执行

for i inrange(3):
if i == 1:
break
print(i)
else:
print("我不会被执行")

print("程序结束")

结果:

0
程序结束

5. 经典应用:查找元素

nums = [1,3,5,7]
target = 5

for n in nums:
if n == target:
print("找到了")
break
else:
print("没找到")

四、循环嵌套(多层循环)

1. 什么是循环嵌套

循环里面再写循环,外层循环走一次,内层循环走一轮。

2. 基本结构

for i inrange(3):
for j inrange(2):
print(i, j)

3. 执行顺序

  • • 外层 i=0 → 内层 j=0,1 完整执行
  • • 外层 i=1 → 内层 j=0,1 完整执行
  • • 外层 i=2 → 内层 j=0,1 完整执行

4. 经典案例1:打印 3×3 星号矩形

for i inrange(3):
for j inrange(3):
print("*", end=" ")
print()  # 换行

结果:

* * *
* * *
* * *

5. 经典案例2:打印九九乘法表

for i inrange(1, 10):
for j inrange(1, i+1):
print(f"{j}×{i}={i*j}", end="\t")
print()

6. 嵌套 + break

break 只退出当前所在内层循环,外层继续。

for i inrange(3):
for j inrange(3):
if j == 2:
break
print(i, j)

7. 嵌套 + continue

continue 只跳过当前内层一次。


五、综合对比表(新手必背)

关键字
作用
是否影响循环继续
break
终止整个循环
循环直接结束
continue
跳过本次循环
循环继续,下一次再来
else
循环正常结束执行
break 打断则不执行

📚 练习题(带详细讲解)

练习1

写出运行结果:

i = 1
while i < 6:
if i == 3:
break
print(i)
    i += 1

答案:
1 2
讲解: i=3 时 break,直接结束循环。


练习2

写出运行结果:

for i inrange(1,5):
if i == 2:
continue
print(i)

答案:
1 3 4
讲解: i=2 跳过,其他正常打印。


练习3

else 是否执行?

for i inrange(3):
if i == 1:
break
else:
print("else 执行")

答案: 不执行
讲解: 被 break 打断,else 不运行。


练习4

打印 1~10,跳过 7,遇到 9 停止

for i inrange(1,11):
if i ==7:
continue
if i ==9:
break
print(i)

答案: 1 2 3 4 5 6 8


📝 本章总结(超清晰)

  1. 1. break:立即终止当前循环,跳出循环体。
  2. 2. continue:跳过本次循环剩余代码,直接进入下一轮。
  3. 3. 循环+else:循环正常结束才执行,被 break 打断则不执行。
  4. 4. 循环嵌套:外层一次,内层一轮;break/continue 只作用于当前层。
  5. 5. 缩进必须一致,多层嵌套尤其要注意对齐。

最新文章

随机文章