如何在 Python 中退出 for 循环?


在 Python 中,for 循环通常用于对范围内的每个项目进行迭代。如果需要在所有迭代完成之前提前终止循环,则可以使用 break 关键字。它通常用于循环体内的条件语句中。

使用 break 语句

让我们看几个例子,了解 break 语句如何在 for 循环中工作。

示例

在这个示例中,for 循环被定义为迭代最多 20 次,但 break 语句在第 10 次迭代(即 x=10)终止了 for 循环。

如果我们将 break 语句应用于嵌套 for 循环的内循环,则它只会退出最内层的循环。它不会停止整个循环。

for x in range(20): 
    print (x) 
    if x==10: 
        break 
        print ("end of loop")

输出

0
1
2
3
4
5
6
7
8
9
10 

示例

在这个示例中,内循环在 i = 0 和 j = 2 迭代时停止,因此循环跳过了剩余的 2 次迭代(0, 3)和(0,4)。我们可以使用标志变量在特定迭代时停止整个循环。让我们看下面的示例。

for i in range(5):
    for j in range(5):
        print(i,j)
        if i == 0 and j == 2:
            print("stopping the inner loop at i = 0 and j = 2")
            break

输出

0 0
0 1
0 2
stopping the inner loop at i = 0 and j = 2
1 0
1 1
1 2
1 3
1 4
2 0
2 1
2 2
2 3
2 4
3 0
3 1
3 2
3 3
3 4
4 0
4 1
4 2
4 3
4 4

示例

标志变量在 (0,2) 迭代时终止了嵌套循环。

flag = False
for i in range(5):
    for j in range(5):
        print(i,j)
        if i == 0 and j == 2:
            print("stopping the loops at i = 0 and j = 2")
            flag = True
            break
    if flag:
        break

输出

0 0
0 1
0 2
stopping the loops at i = 0 and j = 2

使用 return 语句

要退出 for 循环,我们可以使用 return 关键字,这里我们需要将循环放在一个函数中。使用 return 关键字可以直接结束函数。

示例

return 关键字在 (0,2) 迭代时终止了嵌套 for 循环。

def check():
    for i in range(5):
        for j in range(5):
            print(i,j)
            if i == 0 and j == 2:
                return "stopping the loops at i = 0 and j = 2"

print(check())   

输出

0 0
0 1
0 2
stopping the loops at i = 0 and j = 2

更新于: 2023-08-23

2K+ 阅读量

开启你的 职业生涯

通过完成课程获得认证

立即开始
广告