Python流程控制专题:for循环的详细用法
在Python中,for
循环是一种用于迭代遍历序列(如列表、元组、字符串等)或其他可迭代对象的控制结构。for
循环提供了一种简洁的方式来访问序列中的每一个元素。以下是for
循环的详细用法和示例解析:
基本语法
for element in iterable:
# 执行一些操作
element
是序列中的当前元素。iterable
可以是任何可迭代对象,比如列表、元组、字符串、字典、集合等。
示例用法
- 遍历列表
fruits = ['apple', 'banana', 'cherry']
for fruit in fruits:
print(fruit)
- 遍历字符串
word = "hello"
for letter in word:
print(letter)
- 使用
range()
函数遍历数字序列
for i in range(5): # 0, 1, 2, 3, 4
print(i)
range(start, stop, step)
可以指定起始值、结束值和步长。
for i in range(1, 10, 2): # 1, 3, 5, 7, 9
print(i)
- 遍历字典
student_grades = {'Alice': 85, 'Bob': 92, 'Charlie': 78}
for student, grade in student_grades.items():
print(f"{student} received a grade of {grade}")
- 使用
items()
方法可以同时获取键和值。
- 嵌套循环
matrix = [
[1, 2, 3],
[4, 5, 6],
[7, 8, 9]
]
for row in matrix:
for element in row:
print(element)
- 使用
enumerate()
函数获取索引和值
names = ['Alice', 'Bob', 'Charlie']
for index, name in enumerate(names):
print(f"Index: {index}, Name: {name}")
- 使用
zip()
函数同步遍历多个可迭代对象
names = ['Alice', 'Bob', 'Charlie']
ages = [24, 30, 18]
for name, age in zip(names, ages):
print(f"{name} is {age} years old")
- 使用
break
和continue
控制循环
break
用于提前终止循环。continue
用于跳过当前循环的剩余部分,并继续到下一个循环。
for number in range(10):
if number == 5:
break # 退出循环
if number % 2 == 0:
continue # 跳过偶数
print(number) # 输出奇数
For-Else 结构
for
循环也可以与 else
子句一起使用。当 for
循环正常结束时执行 else
中的代码(即未通过 break
提前退出)。
for number in range(1, 5):
if number == 6: # 如果未找到 6,
print("6 is found!")
break
else:
print("6 was not found in the range.")
总结
for
循环在Python中是一个非常强大的工具,可以简洁地解决许多常见的迭代问题。通过与其他函数如 range()
、enumerate()
、zip()
结合使用,可以大大提高代码的可读性和效率。使用 break
和 continue
可以灵活控制循环的流程,而 else
子句则为特定场景提供了额外的逻辑处理能力。