Python 提供了两种基本的循环语句:for 和 while,功能灵活且语法简洁,适合处理各种迭代、条件、集合等操作。
一、for 循环:迭代序列的主力
语法结构
for 变量 in 可迭代对象:
循环体
示例
for i in range(3):
print(i)
# 输出:0 1 2
二、while 循环:基于条件持续执行
语法结构
while 条件:
循环体
示例
i = 0
while i < 3:
print(i)
i += 1
三、常用的循环控制关键字
关键字 |
作用 |
---|---|
break |
立即结束整个循环 |
continue |
跳过当前循环,进入下一轮迭代 |
else |
循环正常结束(未遇到 break)时执行 |
示例(else 和 break):
for i in range(5):
if i == 3:
break
print(i)
else:
print("循环正常结束") # 不会执行
四、常用的循环技巧/方法
1. range() 生成数字序列
for i in range(1, 6, 2): # 起始=1,终止=6(不含),步长=2
print(i) # 输出:1, 3, 5
2. enumerate() 同时获取索引和值
fruits = ["apple", "banana", "cherry"]
for idx, fruit in enumerate(fruits):
print(idx, fruit)
3. zip() 同时遍历多个列表
names = ["Alice", "Bob"]
ages = [25, 30]
for name, age in zip(names, ages):
print(f"{name} is {age}")
4. reversed() 和 sorted() 进行逆序或排序遍历
for x in reversed([1, 2, 3]):
print(x) # 3, 2, 1
for x in sorted([3, 1, 2]):
print(x) # 1, 2, 3
5. 循环嵌套(支持多层)
for i in range(2):
for j in range(2):
print(f"i={i}, j={j}")
6. 列表推导式(简洁高效的 for)
squares = [x**2 for x in range(5)]
print(squares) # [0, 1, 4, 9, 16]
五、循环中的 pass 占位符
for i in range(3):
pass # 占位,不做任何操作
六、结合字典/集合等类型
d = {"a": 1, "b": 2}
for k, v in d.items():
print(k, v)
s = {"apple", "banana"}
for item in s:
print(item)