在Python中,for循环是一种遍历可迭代对象(如列表、元组、字符串、字典、集合或文件等)中的元素的常用结构。在每次迭代中,for循环会取出可迭代对象的下一个元素,并执行指定的代码块。
for循环的基本结构
|
for 变量 in 可迭代对象: |
|
# 执行循环体中的代码块 |
|
# 在每次迭代中,变量被赋予可迭代对象的下一个元素 |
for循环的示例代码
下面是一个简单的for循环示例,它遍历一个列表并打印出列表中的每个元素:
|
# 定义一个列表 |
|
|
fruits = ["apple", "banana", "cherry"] |
|
|
|
|
|
# 使用for循环遍历列表 |
|
|
for fruit in fruits: |
|
|
print(fruit) |
|
|
apple |
|
|
banana |
|
|
cherry |
在这个例子中,fruit变量在每次循环迭代时被赋予fruits列表中的下一个元素,然后执行print(fruit)语句。
遍历其他可迭代对象
除了列表,你还可以使用for循环来遍历其他类型的可迭代对象。
|
# 遍历元组 |
|
colors = ("red", "green", "blue") |
|
for color in colors: |
|
print(color) |
|
|
|
# 遍历字符串(字符串也是一个可迭代对象,遍历其每个字符) |
|
name = "Alice" |
|
for char in name: |
|
print(char) |
|
|
|
# 遍历字典的键或值 |
|
person = {"name": "Bob", "age": 30} |
|
for key in person: |
|
print(key) # 遍历键 |
|
|
|
for value in person.values(): |
|
print(value) # 遍历值 |
|
|
|
# 同时遍历字典的键和值 |
|
for key, value in person.items(): |
|
print(key, value) |
for循环与range()函数
range()函数常用于生成一个数字序列,这在需要循环固定次数时非常有用。
|
# 使用range()生成一个从0到4(不包括4)的数字序列 |
|
for i in range(5): |
|
print(i) |
|
|
|
# 输出: |
|
# 0 |
|
# 1 |
|
# 2 |
|
# 3 |
|
# 4 |
range()函数也可以接受两个参数,第一个参数是起始值,第二个参数是终止值(不包括),还可以接受第三个参数作为步长。
|
# 从1开始,到10结束(不包括10),步长为2的数字序列 |
|
for i in range(1, 10, 2): |
|
print(i) |
|
|
|
# 输出: |
|
# 1 |
|
# 3 |
|
# 5 |
|
# 7 |
|
# 9 |
for循环中的else子句
for循环还有一个可选的else子句,它会在循环正常结束(即没有通过break语句退出)后执行。
|
for i in range(5): |
|
if i == 3: |
|
break # 当i等于3时,跳出循环 |
|
print(i) |
|
else: |
|
print("循环正常结束") |
|
|
|
# 输出: |
|
# 0 |
|
# 1 |
|
# 2 |
|
# (循环被break语句中断,所以不会打印"循环正常结束") |
如果移除了break语句,那么else子句中的代码将会执行。
注意事项
· 在使用for循环时,确保你理解了你正在遍历的可迭代对象的结构。
· 避免在循环体内修改正在遍历的可迭代对象,这可能会导致不可预期的行为。
· 如果循环体内的操作可能引发异常,请考虑使用异常处理来确保程序的健壮性。
for循环是Python中非常强大且常用的控制结构,它使得遍历和处理可迭代对象变得简单而高效。