【Python 学习第 41 天】for 循环
学习日期:2026-10-28
知识点:for 循环
难度:0.82
一、今日知识点
今天学习的是 for 循环。
for 循环用于遍历可迭代对象(如列表、字符串、range 等)中的每个元素,依次执行循环体。基本语法:for 变量 in 可迭代对象: 循环体。循环变量在每次迭代时被赋值为当前元素。可以用 break 提前结束循环,用 continue 跳过本次迭代。例如:for i in range(3): print(i) 会输出 0、1、2。
二、详细解析
概念说明
for 循环是 Python 中最常用的循环结构,它的作用是把一个可迭代对象里的元素挨个取出来,每取一个就执行一次循环体 。你可以把它想象成"流水线":传送带(可迭代对象)上依次送来列表元素、字符串字符、range 生成的数字,机械臂(循环体)对每个送来的东西做同样的处理,直到传送带空了为止。
它有用的地方在于:当你需要对"一组数据"逐个处理时,不用手写下标、不用关心容器有多长,for 会自动帮你遍历完,代码简洁且不容易越界。
语法与用法
核心语法只有一行:
python
for 变量 in 可迭代对象:
循环体
关键规则:
- 可迭代对象 :列表、元组、字符串、字典、
range()、文件对象等都能用。 - 循环变量:每次迭代自动被赋值为当前元素,循环结束后仍保留最后一次的值。
range(start, stop, step):生成整数序列,含start不含stop,step可为负。break:立即跳出整个循环。continue:跳过本次剩余语句,直接进入下一次迭代。for ... else:循环正常结束(未被break打断)时执行else块。
示例代码
示例 1:遍历列表并筛选
python
fruits = ["apple", "banana", "cherry"]
for fruit in fruits:
if fruit == "banana":
continue # 跳过 banana,不打印
print(fruit) # 输出 apple、cherry
示例 2:带步长的 range 与 break
python
# 从 1 开始,每次加 3,遇到大于 8 的数就停止
for i in range(1, 20, 3):
if i > 8:
break # 提前结束循环
print(i, end=" ") # 输出 1 4 7
示例 3:累加求和
python
total = 0
for i in range(1, 101):
if i % 2 == 0: # 只累加偶数
total += i
print(total) # 输出 2550
常见坑
- 误以为
range(a, b)包含b:range(1, 10)只到 9。想要 1 到 100 必须写range(1, 101),这是新手最常犯的"差一错误"。 - 在循环中修改正在遍历的列表 :边遍历边
remove元素会导致跳过元素或结果错乱。正确做法是遍历副本(for x in lst[:])或新建列表。 - 混淆
break和continue:break是"整个循环不干了",continue只是"这一轮先跳过"。写反了逻辑会完全跑偏。
小结
for 循环就是"对可迭代对象中的每个元素做同样的事",掌握 range 的边界、break/continue 的区别,就能应付绝大多数遍历场景。
三、今日练习
第 1 题 ❌
**题目:**以下代码的输出是什么?
for i in range(1, 10, 3):
if i % 2 == 0:
continue
print(i, end=' ')
- 我的答案:
C - 正确答案:
A
第 2 题 ❌
**题目:**补全代码:使用 for 循环计算 1 到 100 中所有偶数的和,并打印结果。
total = 0
for i in range(1, 101):
if ______:
total += i
print(total)
- 我的答案:
i % 2 = 0 - 正确答案:
i % 2 == 0
四、今日总结
- 题目数量:2
- 答对:0
- 正确率:0%
本文由个人 Python 学习智能体自动生成