📜  for 循环 python (1)

📅  最后修改于: 2023-12-03 15:15:10.183000             🧑  作者: Mango

For循环Python

在Python编程中,for 循环是一种重复执行相同代码块的迭代工具。 for 循环一般用于遍历序列类型(如列表、元组、字符串)或其他可迭代对象(如文件)。其语法如下所示:

for 变量 in 序列:
    代码块1 #需要执行的语句
else:
    代码块2 #在循环结束后执行的语句

其中,变量 是在执行循环时用于保存序列中每个元素的变量名。序列 可以是一个序列类型如列表、元组或字符串,也可以是其他可迭代对象。代码块1 是在每次迭代中执行的代码块,循环将依次遍历序列中的每个元素,每当遍历到一个元素时都会将该元素赋值给 变量,因此我们就可以在 代码块1 中使用该变量了。在循环结束后,可以使用 else 语句,在 else 后面的 代码块2 中执行代码。

在列表中循环

下面的程序演示了如何使用 for 循环遍历一个列表:

fruits = ["apple", "banana", "cherry"]
for fruit in fruits:
    print(fruit)

该程序会使用 for 循环遍历 fruits 列表中的每一个元素,并将其赋值给 fruit 变量。 在每次迭代中,print() 函数将会输出相应的水果名称。

在元组中循环

下面的程序演示了如何在元组中使用 for 循环:

numbers = (1, 2, 3, 4, 5)
for number in numbers:
    print(number)

该程序会使用 for 循环遍历 numbers元组中的每一个元素,并将其赋值给 number 变量。 在每次迭代中,print() 将会输出相应的数字。

在字符串中循环

下面的程序演示了如何在字符串中使用 for 循环:

language = "Python"
for char in language:
    print(char)

该程序会使用 for 循环遍历 language 字符串中的每一个字符,并将其赋值给 char 变量。 在每次迭代中,print() 将会输出相应的字符。

循环计数器

除了 for 循环遍历列表、元组和字符串等可迭代对象外,还可以用它作为一个计数器进行遍历。 下面的程序演示了如何使用 for 循环作为计数器:

for i in range(5):
    print(i)

该程序使用 for 循环遍历一个 range(5) 对象,并将迭代的次数赋值给 i 变量。 range(5) 对象中含有五个元素,分别是 01234。因此,迭代五次,分别输出相应的数字。

循环嵌套

for 循环可以嵌套,也就是在 for 循环内部再添加另一个 for 循环,可以用来遍历多维数组或矩阵等数据结构。 下面的程序演示了如何使用嵌套的 for 循环遍历一个二维数组:

matrix = [[1, 2, 3], [4, 5, 6], [7, 8, 9]]
for row in matrix:
    for num in row:
        print(num)

该程序使用两个 for 循环。外层循环遍历 matrix 列表中的每一行,内层循环遍历每一行中的元素。 在每个迭代中,print() 函数输出相应的数字。

循环控制语句

for 循环中,还可以使用以下三种控制语句来改变循环执行的方式:

  • break 语句:跳出循环,终止执行。如果在循环过程中遇到 break 语句,则跳出循环,不再执行后续迭代。
  • continue 语句:跳过本次循环,继续执行下一次循环。如果在循环过程中遇到 continue 语句,则跳过本次循环,直接继续执行下一次迭代。
  • pass 语句:不执行任何操作,只是占位符。如果在循环过程中没有需要执行的语句,则可以使用 pass 语句站位。

我们可以在 for 循环语句块内通过这三种语句对程序进行调控。

示例

下面是一个 for 循环的例子,它使用嵌套的循环遍历一个列表,并在特定条件下跳过某些迭代。

animals = ["dog", "cat", "elephant", "giraffe", "dog", "lion", "tiger"]
for animal in animals:
    if animal == "dog":
        continue  # 跳过狗的迭代
    elif animal == "lion":
        break  # 如果遇到狮子,退出循环
    print(animal)
else:
    print("All animals have been printed.")

该程序使用 continue 语句跳过了所有狗的迭代,并使用 break 语句在遇到狮子后退出了循环。 在循环结束后,如果没有使用 break 跳出循环,则代码块2将会执行。