【Python 学习第 39 天】for 循环
学习日期:2026-10-26
知识点:for 循环
难度:0.65
一、今日知识点
今天学习的是 for 循环。
for 循环用来遍历一个可迭代对象(如列表、字符串、range 生成的数字序列),每取出一个元素就执行一次循环体。它比 while 更适合"已知要遍历的内容"的场景,不需要手动维护计数器。range(start, stop, step) 生成从 start 到 stop(不含 stop)、步长为 step 的整数序列,step 可为负数实现倒序。循环体中可以用 break 提前结束,用 conti
二、详细解析
概念说明
for 循环是 Python 中最常用的循环结构,专门用来"遍历"一个可迭代对象------列表、字符串、range() 生成的数字序列、字典、集合等都可以。它的工作方式很直观:从可迭代对象里依次取出每一个元素,每取出一个就执行一次循环体,取完了循环自然结束。
为什么它有用?因为很多场景下我们事先就知道"要对哪些东西逐个处理",比如遍历一个名单、处理一串字符、重复执行固定次数。这时候用 for 比 while 更省心:不需要手动初始化计数器、不需要在循环体里自增、也不用担心忘记更新条件导致死循环。把"遍历"这件事交给 Python 自己管,代码更短也更不容易出错。
语法与用法
核心语法:
python
for 变量 in 可迭代对象:
循环体
几条关键规则:
range(start, stop, step):生成从start开始、到stop之前(不含stop)、步长为step的整数序列。step可以为负数,实现倒序;省略start时默认从 0 开始,省略step时默认步长为 1。break:立即跳出整个循环,不再执行后续迭代。continue:跳过本次循环剩下的语句,直接进入下一次迭代。for ... else:循环正常结束(没有被break打断)时会执行else块,初学阶段了解即可。- 循环变量在循环结束后仍然存在,保存的是最后一个取到的值。
示例代码
示例 1:累加奇数
python
total = 0
for i in range(1, 10, 2): # 依次取 1, 3, 5, 7, 9
total += i
print(total) # 输出 25
示例 2:倒序输出并配合条件判断
python
for i in range(5, 0, -1): # 5, 4, 3, 2, 1
if i == 3:
continue # 跳过 3,不打印
print(i)
# 输出:5 4 2 1(各占一行)
for ch in "abc": # 字符串同样可遍历
print(ch.upper())
# 输出 A B C
常见坑
range的右端点取不到 。range(1, 5)只产生 1、2、3、4,不含 5。想输出 1 到 5 要写range(1, 6),这是初学者最容易数错的地方。- 倒序时忘记负步长 。想从 5 数到 1,写成
range(5, 0)会得到空序列,必须写range(5, 0, -1)。 - 在循环中修改正在遍历的列表 。边遍历边
append或remove会导致跳过元素甚至行为异常,安全做法是遍历副本(如for x in lst[:])或先收集要改的内容再统一处理。
小结
for 循环就是"对可迭代对象里的每个元素做一遍同样的事",掌握 range 的三个参数和 break/continue 就够应付绝大多数场景了。
三、今日练习
第 1 题 ✅
**题目:**执行以下代码后,输出结果是什么?
total = 0
for i in range(1, 10, 2):
total += i
print(total)
- 我的答案:
A
第 2 题 ❌
**题目:**补全代码,使其输出 5 4 3 2 1(每个数字单独一行):
for i in range(____):
print(i)
- 我的答案:
1,5,-1 - 正确答案:
5, 0, -1
四、今日总结
- 题目数量:2
- 答对:1
- 正确率:50%
本文由个人 Python 学习智能体自动生成