什么是循环遍历?
循环遍历是编程中的基本概念,它允许我们对集合中的每个元素执行相同的操作,或者重复执行一段代码直到满足特定条件。Python提供了两种主要的循环结构:for循环和while循环。
循环遍历的重要性:
- 自动化重复性任务
- 高效处理大量数据
- 简化复杂操作
- 减少代码冗余
- 提高代码可读性和可维护性
for循环 - 遍历序列的首选
for循环是Python中最常用的遍历方式,特别适合处理已知长度的序列(如列表、元组、字符串等)。
基础语法:
for 变量 in 序列:
# 执行代码块
遍历列表:
# 遍历水果列表
fruits = ['苹果', '香蕉', '橙子', '葡萄']
print("我喜欢的水果:")
for fruit in fruits:
print(f"- {fruit}")
# 输出:
# 我喜欢的水果:
# - 苹果
# - 香蕉
# - 橙子
# - 葡萄
遍历字典:
# 遍历学生字典
student = {'姓名': '张三', '年龄': 20, '专业': '计算机科学'}
# 遍历键
print("学生信息键:")
for key in student:
print(key)
# 遍历键值对
print("\n学生详细信息:")
for key, value in student.items():
print(f"{key}: {value}")
while循环 - 条件控制的遍历
while循环在满足特定条件时重复执行代码块,适合处理未知迭代次数的情况。
基础语法:
while 条件:
# 执行代码块
计数器示例:
# 使用while循环计数
count = 1
print("倒计时开始:")
while count <= 5:
print(count)
count += 1
print("发射!")
用户输入验证:
# 使用while循环进行用户输入验证
password = ""
while password != "secret":
password = input("请输入密码:")
if password != "secret":
print("密码错误,请重试!")
print("欢迎进入系统!")
高级遍历技巧
1. 使用range()函数
# 生成数字序列
print("0到4的数字:")
for i in range(5):
print(i)
# 指定范围
print("\n5到9的数字:")
for i in range(5, 10):
print(i)
# 指定步长
print("\n0到10的偶数:")
for i in range(0, 11, 2):
print(i)
2. 使用enumerate()获取索引
fruits = ['苹果', '香蕉', '橙子', '葡萄']
print("水果列表:")
for index, fruit in enumerate(fruits):
print(f"{index + 1}. {fruit}")
3. 使用zip()遍历多个序列
names = ['张三', '李四', '王五']
scores = [85, 92, 78]
print("学生成绩:")
for name, score in zip(names, scores):
print(f"{name}: {score}分")
循环控制语句
break语句
立即终止当前循环
# 在找到目标时退出循环
numbers = [1, 3, 5, 7, 9, 2, 4, 6, 8]
target = 4
for num in numbers:
if num == target:
print(f"找到目标数字 {target}!")
break
print(f"检查: {num}")
continue语句
跳过当前迭代,继续下一次循环
# 只打印奇数
for num in range(10):
if num % 2 == 0:
continue
print(num)
else语句
循环正常结束时执行
# 检查质数
num = 11
for i in range(2, num):
if num % i == 0:
print(f"{num} 不是质数")
break
else:
print(f"{num} 是质数")
循环遍历最佳实践
- 优先选择for循环:当遍历已知序列时,for循环更简洁安全
- 避免无限循环:使用while循环时确保有退出条件
- 使用描述性变量名:如
for student in students而非for s in st - 尽量减少循环内操作:将不依赖循环变量的计算移到循环外
- 合理使用循环控制语句:break和continue可以简化逻辑但不要滥用
- 考虑使用推导式:对于简单转换,列表推导式更高效
发表评论