Python3嵌套循环与break语句

引言

在编程过程中,经常需要使用循环语句来重复执行某些特定的代码块。而嵌套循环则是循环语句的一种特殊形式,它可以在一个循环语句中嵌套另一个循环语句。Python提供了丰富的循环控制语句,其中break是一种常用的关键字,可以用于提前终止循环。本文将介绍Python3中嵌套循环的用法以及如何使用break语句来控制嵌套循环的执行流程。

嵌套循环的基本语法

Python中的嵌套循环是通过在一个循环语句中嵌套另一个循环语句来实现的。嵌套循环的基本语法如下所示:

for variable1 in sequence1:
    for variable2 in sequence2:
        # 执行一些操作

在上面的语法中,sequence1sequence2可以是任意可迭代的数据类型,如列表、元组、字符串等。在循环过程中,首先会迭代sequence1中的元素,然后对于每个元素,会依次迭代sequence2中的元素,并执行相应的操作。

下面通过一个具体的例子来说明嵌套循环的用法。假设我们要打印一个由数字组成的矩阵,矩阵的行数和列数都由用户输入确定。代码如下所示:

rows = int(input("请输入矩阵的行数:"))
cols = int(input("请输入矩阵的列数:"))

for i in range(rows):
    for j in range(cols):
        print(i * cols + j, end=" ")
    print()

运行上述代码,用户输入行数为3,列数为4时,程序会输出如下的矩阵:

0 1 2 3 
4 5 6 7 
8 9 10 11

使用break语句提前终止循环

有时候,在嵌套循环中,我们可能需要在满足某个条件时提前终止内层循环或者整个循环。这个时候,可以使用break语句来实现。break语句可以立即终止当前所在的循环,并跳出循环体执行循环后面的代码。

下面通过一个例子来演示如何使用break语句。假设我们要在一个二维列表中查找某个元素的位置,并在找到后提前终止循环。代码如下所示:

matrix = [[1, 2, 3], [4, 5, 6], [7, 8, 9]]
target = 5

for i in range(len(matrix)):
    for j in range(len(matrix[i])):
        if matrix[i][j] == target:
            print(f"元素 {target} 的位置为 ({i}, {j})")
            break
    else:
        continue
    break

运行上述代码,程序会输出元素5的位置为(1, 1)。在代码中,我们使用break语句来提前终止内层循环,当找到目标元素时,先输出位置信息,然后通过break跳出内层循环,再通过break跳出外层循环。

应用实例:计算素数

嵌套循环和break语句在实际应用中非常有用。我们可以借助嵌套循环和break语句来编写一个程序,用于判断某个数是否为素数。素数是指只能被1和它本身整除的正整数。

下面是一个求素数的示例代码:

num = int(input("请输入一个正整数:"))

is_prime = True
for i in range(2, num):
    if num % i == 0:
        is_prime