第 16 课 · 阶段二 · 基础语法

for 循环与 range

for 循环是 Python 最常用的循环,天生适合“遍历”。这一课掌握 for + range、遍历各种数据,以及两层循环嵌套。

第 16 课阶段二 · 基础语法难度:入门建议时长:35 分钟关键词:for · range · 遍历 · 嵌套循环

🎯 学完本课你将掌握

  • 用 for 循环遍历字符串、列表等序列
  • 灵活使用 range() 的三种写法
  • 理解并写出嵌套循环

一、for 遍历字符串

遍历字符串.py
1for ch in "Python":
2 print(ch)
3# 逐个输出 P y t h o n

二、for 遍历列表

遍历列表.py
1fruits = ["苹果", "香蕉", "橘子"]
2for f in fruits:
3 print("我喜欢", f)

三、range() 生成数字序列

写法含义示例
range(n)0 到 n-1range(3) → 0,1,2
range(a, b)a 到 b-1range(2,5) → 2,3,4
range(a, b, s)a 到 b-1 步长 srange(1,10,2) → 1,3,5,7,9
range 用法.py
1for i in range(5):
2 print(i, end=" ") # 0 1 2 3 4
3print()
4
5for i in range(2, 6):
6 print(i, end=" ") # 2 3 4 5
7print()
8
9for i in range(0, 10, 2):
10 print(i, end=" ") # 0 2 4 6 8
11print()
12
13for i in range(5, 0, -1):
14 print(i, end=" ") # 5 4 3 2 1 倒着数
15print()
✅ 要点
range(开始, 结束, 步长) 是左闭右开:包含开始、不含结束。range(1, 4) 生成 1,2,3。

四、用 enumerate 同时拿序号和值

enumerate.py
1names = ["小明", "小红", "小刚"]
2for idx, name in enumerate(names, start=1):
3 print(f"第{idx}名:{name}")

五、嵌套循环:九九乘法表

九九乘法表.py
1for i in range(1, 10):
2 for j in range(1, i + 1):
3 print(f"{j}x{i}={i * j}", end=" ")
4 print() # 外层每行结束换行

六、常见错误与解决

常见错误与解决

错误现象原因 / 解决方法
for 循环冒号后没缩进for 行尾要加冒号,循环体必须缩进。
range 参数顺序搞反range(5, 1) 生成空序列,因为开始>结束且步长为正;倒序要加负步长。
遍历时修改列表导致结果怪遍历列表时尽量别增删元素,可先复制一份或改用列表推导式。
✍️ 小练习
用 for + range 打印 1-20 中所有 3 的倍数;再用嵌套循环打印一个由 * 组成的 5 行直角三角形。
📌 本节小结
for 天生遍历,range 精确控次数(左闭右开),enumerate 带序号,嵌套循环解决二维问题。for 是日常使用率最高的循环,务必练熟。