Python中的for循环怎么用?

大哥大姐帮我教一下,Python中的for循环怎么用?
最新回答
鲜奶千层雪

2026-10-27 12:25:41

在Python中,for循环是一种强大的迭代工具,用于遍历序列(如列表、字符串、元组等)或其他可迭代对象。以下是详细的使用方法和示例:

1. 基本语法for 变量 in 可迭代对象: # 循环体(每次迭代执行的代码)
  • 变量:每次迭代时,当前元素会被赋值给这个变量。
  • 可迭代对象:可以是列表、字符串、字典、集合、文件行,甚至是通过range()生成的数字序列。
2. 常见用法示例(1) 遍历字符串text = "Hello"for char in text: print(char)

输出:

Hello(2) 遍历列表numbers = [1, 2, 3]for num in numbers: print(num * 2)

输出:

246(3) 使用range()生成数字序列# 打印0到4for i in range(5): print(i)# 打印1到5(步长为1)for i in range(1, 6): print(i)# 打印0到10,步长为2for i in range(0, 11, 2): print(i)(4) 遍历字典person = {"name": "Alice", "age": 25}for key in person: print(key, ":", person[key])# 直接获取键值对for key, value in person.items(): print(key, "->", value)3. 高级用法(1) 嵌套循环# 打印乘法表片段for i in range(1, 4): for j in range(1, 4): print(i * j, end="t") print() # 换行

输出:

1 2 3 2 4 6 3 6 9 (2) 结合enumerate()获取索引fruits = ["apple", "banana", "cherry"]for index, fruit in enumerate(fruits): print(f"Index {index}: {fruit}")

输出:

Index 0: appleIndex 1: bananaIndex 2: cherry(3) 使用zip()并行遍历多个序列names = ["Alice", "Bob", "Charlie"]scores = [85, 90, 78]for name, score in zip(names, scores): print(f"{name}'s score: {score}")4. 循环控制
  • break:提前退出循环。for i in range(10): if i == 5: break print(i)
  • continue:跳过当前迭代。for i in range(5): if i == 2: continue print(i)
  • else:循环正常结束后执行(未触发break时)。for num in [1, 3, 5]: if num % 2 == 0: print("Found even number") breakelse: print("No even numbers found")
5. 实际应用示例(1) 计算阶乘n = int(input("Enter a number: "))factorial = 1for i in range(1, n + 1): factorial *= iprint(f"{n}! = {factorial}")(2) 求列表元素的和numbers = [10, 20, 30, 40]total = 0for num in numbers: total += numprint("Sum:", total)(3) 统计字符出现次数text = "hello world"count = {}for char in text: if char in count: count[char] += 1 else: count[char] = 1print(count)6. 注意事项
  • 缩进:循环体必须缩进(通常为4个空格)。
  • 可迭代对象:确保对象是可迭代的,否则会抛出TypeError。
  • 性能:对于大数据量,考虑使用生成器或向量化操作(如NumPy)替代纯for循环。

通过灵活运用for循环,可以高效处理重复任务、遍历数据结构,并结合其他控制语句实现复杂逻辑。