
图1:Python for循环全解析 核心执行逻辑(先遍历·后执行)
一、for循环基础:语法与核心原理
for循环的核心作用是:依次取出可迭代对象中的每一个元素,并执行循环体代码。它不需要手动管理计数器,语法比while更简洁,是遍历数据的首选方案,也是Python for循环全解析的入门核心。
1. 标准语法格式
# for 循环标准结构
for 变量名 in 可迭代对象:
循环体代码
语法说明:
- 变量名:每次循环时,用来接收当前取出的元素
- 可迭代对象:可以被遍历的数据(字符串、列表、元组、字典、range等)
- 循环体:每次循环都要执行的代码,必须缩进
2. 最简单示例:遍历字符串
# 遍历字符串,逐个输出字符
str1 = "Python"
for char in str1:
print("当前字符:", char)
执行流程:
- 第一次循环:char = ‘P’,执行print
- 第二次循环:char = ‘y’,执行print
- ……直到所有字符遍历完毕,循环自动结束
二、range() 函数:for循环的黄金搭档
在for循环中,range() 是最常用的函数,用于生成一段连续的整数序列,专门用来控制循环次数,是Python for循环的核心工具。

图2:Python for循环全解析 range()函数三种用法对比
1. range() 三种用法
range(n):生成 0 ~ n-1 的整数range(start, end):生成 start ~ end-1 的整数range(start, end, step):按步长 step 生成整数
2. 基础案例:循环 5 次
# 循环 5 次,输出 0~4
for i in range(5):
print("当前数字:", i)
3. 进阶案例:指定起始、结束、步长
# 输出 1 3 5 7 9(奇数)
for i in range(1, 10, 2):
print(i)
三、for循环控制:break、continue、else
for循环同样支持 break、continue、else 语法,用法与while循环完全一致,是Python for循环的进阶核心。
1. break:立即终止整个循环
# 找到数字 5 就停止
for i in range(1, 10):
if i == 5:
print("找到 5,退出循环")
break
print(i)
2. continue:跳过本次循环
# 跳过 5,不打印
for i in range(1, 10):
if i == 5:
continue
print(i)
3. for…else:循环正常结束后执行
循环正常结束(没有被 break 打断)时,执行 else 代码块。
for i in range(3):
print(i)
else:
print("循环正常结束")
四、for循环遍历常用数据类型
1. 遍历列表
# 遍历列表
names = ["小明", "小红", "小刚"]
for name in names:
print("姓名:", name)
2. 遍历字典
# 遍历字典
info = {"name": "张三", "age": 20, "city": "北京"}
for key, value in info.items():
print(key, ":", value)
五、for嵌套循环:多层循环实战
嵌套循环:外层循环执行一次,内层循环执行全部。常用于打印图案、处理二维数据,是Python for循环的实战核心。

图3:Python for循环全解析 九九乘法表 嵌套循环执行逻辑
重点案例:九九乘法表(超详细讲解)
九九乘法表是学习嵌套循环最经典的案例,必须彻底掌握。它由 9行9列 组成,核心规律是:第 i 行,有 i 个式子。
需求分析
- 外层循环:控制行数,循环 9 次(1~9)
- 内层循环:控制列数,第 i 行就循环 i 次
- 每行输出完成后必须换行,才能形成表格结构
完整代码
# 九九乘法表完整实现
for i in range(1, 10): # 外层循环:控制行数 i = 1~9
for j in range(1, i+1): # 内层循环:控制列数 j = 1~i
print(f"{j} × {i} = {i*j}", end="\t") # 打印式子,不换行
print() # 内层循环结束,换行
代码逐行讲解
- 外层 for i in range(1,10):生成 1~9,代表一共 9 行。
- 内层 for j in range(1, i+1):j 从 1 到 i,保证第 i 行只有 i 个式子。
- print(…, end=”\t”):\t 是制表符,让式子对齐美观。
- 内层结束后 print():表示一行打印完毕,进行换行。
运行效果
1 × 1 = 1 1 × 2 = 2 2 × 2 = 4 1 × 3 = 3 2 × 3 = 6 3 × 3 = 9 1 × 4 = 4 2 × 4 = 8 3 × 4 = 12 4 × 4 = 16 1 × 5 = 5 2 × 5 = 10 3 × 5 = 15 4 × 5 = 20 5 × 5 = 25 1 × 6 = 6 2 × 6 = 12 3 × 6 = 18 4 × 6 = 24 5 × 6 = 30 6 × 6 = 36 1 × 7 = 7 2 × 7 = 14 3 × 7 = 21 4 × 7 = 28 5 × 7 = 35 6 × 7 = 42 7 × 7 = 49 1 × 8 = 8 2 × 8 = 16 3 × 8 = 24 4 × 8 = 32 5 × 8 = 40 6 × 8 = 48 7 × 8 = 56 8 × 8 = 64 1 × 9 = 9 2 × 9 = 18 3 × 9 = 27 4 × 9 = 36 5 × 9 = 45 6 × 9 = 54 7 × 9 = 63 8 × 9 = 72 9 × 9 = 81
六、综合实战案例(超详细)
案例1:1~100 累加求和
total = 0
for i in range(1, 101):
total += i
print("1~100总和:", total)
案例2:统计列表中偶数个数
nums = [1,2,3,4,5,6,7,8,9,10]
count = 0
for num in nums:
if num % 2 == 0:
count += 1
print("偶数个数:", count)
案例3:用户登录验证(3次机会)
pwd = "123456"
for i in range(3):
user_input = input("请输入密码:")
if user_input == pwd:
print("登录成功")
break
else:
print(f"密码错误,剩余 {2-i} 次机会")
else:
print("账号锁定")
案例4:打印九九乘法表的进阶优化(带对齐美化)
基础版九九乘法表虽然能运行,但在Python 3中,直接用`\t`可能会出现对齐不整齐的问题。我们可以用字符串格式化的方式,让每一列的宽度固定,实现完美对齐,这也是for循环在实际开发中的常用技巧。
# 优化版九九乘法表:固定列宽,完美对齐
for i in range(1, 10):
for j in range(1, i+1):
# 用format格式化,固定每个式子占8个字符宽度,左对齐
print("{:8s}".format(f"{j}×{i}={i*j}"), end="")
print()
这个优化版本利用了for循环结合字符串格式化,让输出更美观,适合在实际项目中使用,也是Python for循环的进阶实战技巧。
七、for循环常见易错点(新手必看)
易错点1:忘记缩进
循环体必须缩进,否则不属于循环,会报错或逻辑错误。
易错点2:range 结束值不包含
range(1,5) 只包含 1、2、3、4,不包含 5。
易错点3:break 和 continue 混淆
break 退出整个循环;continue 只跳过本次。
八、核心知识点总结
- Python for循环:专门用于遍历可迭代对象,语法简洁、无需计数器
- range():生成整数序列,控制循环次数
- break:立即终止整个循环
- continue:跳过本次循环,继续下一次
- for…else:循环正常结束后执行
- 嵌套循环:外层一次,内层全部,适合打印图案、多维数据
- 九九乘法表:嵌套循环最经典案例,外层控制行,内层控制列
延伸学习推荐
学习完for循环,可参考Python官方for循环文档深入理解;
也可以继续学习Python while循环全解析,全面掌握Python循环语法体系。
下一篇我们将学习:循环综合实战与项目案例,巩固Python循环知识体系!

渝公网安备50022402001073号
Pingback: Python 零基础入门系列专栏:10 + 篇干货从环境搭建到语法实战,小白一站式学 Python - 小白 编程 笔记