Python for 循环
for 是 Python 中最常用的循环语句,用于遍历可迭代对象(序列、字典、集合等)。
Python 的 for 循环比 C/C++ 等语言更加简洁和强大,不需要手动管理循环变量,直接遍历元素。
单词释义: for 意为"为、对于",用于迭代遍历。
基本语法与参数
语法格式
for 变量 in 可迭代对象:
代码块
语法说明
- 变量: 每次循环从可迭代对象中取出的元素。
- 可迭代对象: 列表、元组、字符串、字典、集合、range 等。
- 缩进: 循环体必须缩进。
else 子句
- 可选: for 循环可以有 else 子句。
- 执行时机: 循环正常结束(未通过 break 退出)时执行。
实例
示例 1:遍历列表
实例
# 遍历列表
fruits = ["苹果", "香蕉", "橙子"]
for fruit in fruits:
print(fruit)
# 带索引的遍历
for i, fruit in enumerate(fruits):
print(f"{i}: {fruit}")
fruits = ["苹果", "香蕉", "橙子"]
for fruit in fruits:
print(fruit)
# 带索引的遍历
for i, fruit in enumerate(fruits):
print(f"{i}: {fruit}")
运行结果预期:
苹果 香蕉 橙子 0: 苹果 1: 香蕉 2: 橙子
代码解析:
- for 循环直接遍历列表中的每个元素。
- enumerate() 同时提供索引和值。
示例 2:遍历字符串和元组
实例
# 遍历字符串
for char in "Python":
print(char, end=" ")
print() # 换行
# 遍历元组
point = (10, 20)
for value in point:
print(value, end=" ")
print()
for char in "Python":
print(char, end=" ")
print() # 换行
# 遍历元组
point = (10, 20)
for value in point:
print(value, end=" ")
print()
运行结果预期:
P y t h o n 10 20
字符串和元组也是可迭代的。
示例 3:遍历字典
实例
# 遍历字典(默认遍历键)
person = {"name": "Tom", "age": 20, "city": "Beijing"}
for key in person:
print(key)
print("---")
# 遍历键值对
for key, value in person.items():
print(f"{key}: {value}")
print("---")
# 只遍历值
for value in person.values():
print(value)
person = {"name": "Tom", "age": 20, "city": "Beijing"}
for key in person:
print(key)
print("---")
# 遍历键值对
for key, value in person.items():
print(f"{key}: {value}")
print("---")
# 只遍历值
for value in person.values():
print(value)
运行结果预期:
name age city --- name: Tom age: 20 city: Beijing --- Tom 20 Beijing
字典的 items()、keys()、values() 方法可以遍历不同的部分。
示例 4:带 else 的 for 循环
实例
# for-else 结构
for i in range(3):
print(i)
else:
print("循环正常结束")
print("---")
# break 时 else 不执行
for i in range(5):
if i == 3:
break
print(i)
else:
print("这行不会打印")
for i in range(3):
print(i)
else:
print("循环正常结束")
print("---")
# break 时 else 不执行
for i in range(5):
if i == 3:
break
print(i)
else:
print("这行不会打印")
运行结果预期:
0 1 2 循环正常结束 --- 0 1 2
for-else 结构的 else 在循环被 break 终止时不执行。
示例 5:嵌套循环
实例
# 嵌套循环 - 打印九九乘法表
for i in range(1, 10):
for j in range(1, i + 1):
print(f"{j}*{i}={i*j}", end="\t")
print()
for i in range(1, 10):
for j in range(1, i + 1):
print(f"{j}*{i}={i*j}", end="\t")
print()
运行结果预期:
1*1=1 1*2=2 2*2=4 1*3=3 2*3=6 3*3=9 ...
嵌套循环可以用于处理多维数据结构或生成表格。
Python3 循环语句
点我分享笔记