本篇是零基础Python自学系列第6天笔记,适合纯小白入门,内容包含实操代码、详细讲解与配套练习题。
for循环核心定位:已知循环次数时使用,专门用来遍历有序可迭代序列
可遍历序列:字符串、列表、range()生成的数字区间;
临时变量:每一轮循环自动接收序列内一个元素,变量名自定义;
range()三种标准用法,统一遵循左闭右开规则:
range(结束值):默认从0开始,不含结束数字;
range(起始,结束):包含起始、不包含结束;
range(起始,结束,步长):按固定间隔生成数字,用来批量取奇数/偶数;
循环控制关键字(for/while通用)
break:直接彻底终止全部循环,剩余轮次不再执行;
continue:仅跳过当前本轮循环剩余代码,直接开启下一轮循环;
for循环自动管理计数,无需手动修改变量,不会轻易出现死循环。
理解while循环定位:未知循环次数、依靠条件真假控制循环启停,和for循环互补;
吃透while完整语法结构、执行流程、强制缩进规则;
掌握while循环标准三步写法:初始化变量→设置循环条件→循环内更新变量;
分清死循环产生原因,学会规避死循环、强行终止死循环的方法;
掌握break、continue在while内的使用,重点规避continue引发的死循环;
了解while...else特殊语法;
完成数字打印、累加求和、筛选数字、交互式猜数字综合实战;
清晰区分for循环与while循环适用场景,能根据需求选对循环。
while翻译为“当……的时候”,执行逻辑:
先判断while后方条件表达式:
条件结果为True:执行缩进后的循环体代码;
循环体全部执行完成后,回到开头重新判断条件;
条件结果变为False:直接跳出整个while循环,执行循环下方无缩进代码。
# 第一步:初始化控制变量变量名 = 初始值# 第二步:书写while循环条件while 条件表达式:# 【强制缩进】循环体代码,条件为True才会重复执行执行语句1执行语句2# 第三步:循环体内更新控制变量(防止死循环,必不可少)变量名 += 1 / 变量名 -= 1# 无缩进代码:循环结束后仅执行一次后续代码
语法分项拆解:
初始化控制变量 提前定义用来控制循环启停的数字变量(如i = 1),给一个起始数值,用来和条件做对比;
条件表达式 可以是比较运算(i <= 10)、逻辑运算;表达式结果只能是True/False;末尾必须带英文冒号:;
循环体缩进 Python 依靠 4 个空格缩进区分代码块,只有缩进后的代码会重复循环;无缩进代码不属于循环,只会运
行一次;
+=1/ 自减-=1),否则条件永远成立,程序卡死进入死循环。# 1. 初始化计数器变量i = 1# 2. 设置循环条件:i小于等于10时循环执行while i <= 10:# 循环体:打印当前数字print("当前数字:", i)# 3. 更新变量:i每次+1,逐步让条件变为Falsei = i + 1
逐轮运行拆解:
初始i=1,判断1<=10 → True,打印 1,i变为 2;
i=2,判断2<=10 → True,打印 2,i变为 3; ……
i=10,判断10<=10 → True,打印 10,i变为 11;
i=11,判断11<=10 → False,循环直接结束。 输出结果:依次打印 1、2、3、4、5、6、7、8、9、10。
循环条件永久等于True,程序无限重复执行,无法自动停止,控制台卡死,只能手动强制关闭。
# 错误代码:缺少 i += 1i = 1while i <= 10:print(i)# 没有更新i,i永远等于1,条件永久成立
问题:i始终为 1,1<=10永远是 True,无限打印数字 1。
while True:无退出逻辑# 纯死循环,没有任何终止条件while True:print("无限循环")
手动强制停止:控制台窗口按下快捷键 Ctrl + C;
代码内主动终止:搭配if判断 + break,满足指定条件时退出循环。
while True:本身不是错误,适合登录、猜数字、菜单交互等不知道用户会操作多少次的场景,只要内部写好break退出逻
辑即可正常使用。
触发break后,循环立刻终止,后续所有循环轮次全部跳过,直接执行循环下方代码。 示例:循环打印 1~10,数字等于 6
时立刻结束循环
i = 1while i <= 10:if i == 6:# 触发break,直接跳出循环breakprint(i)i += 1
输出结果:1 2 3 4 5 代码解析:当i=6时执行break,不会打印 6,同时不再执行i +=1,循环直接结束。
触发continue后,本轮continue下方所有代码全部跳过,直接回到while条件判断,开启下一轮循环。
i = 1while i <= 5:if i == 3:continueprint(i)i += 1
问题:i=3触发continue,直接跳过下方i +=1,i永远等于 3,条件永久成立,卡死。
i = 0while i < 5:# 先更新变量,再判断continuei += 1if i == 3:continueprint(i)
输出结果:1 2 4 5 解析:每次循环先让 i 自增,触发 continue 也不会卡住变量,仅跳过数字 3 的打印。
只有while循环正常结束(条件变为 False,没有被break强行打断),才会执行else内代码; 如果循环被break终止,
else板块完全不会运行。
i = 1while i <= 3:print(i)i += 1else:# 循环正常走完1、2、3后执行print("循环全部正常结束")
输出:
123循环全部正常结束
对比带 break 案例(else 不执行):
i = 1while i <= 3:if i == 2:breakprint(i)i += 1else:print("循环正常结束")
仅输出数字 1,不会打印 else 内文字。
# 存储总和的变量,初始0total = 0# 计数器初始化i = 1while i <= 100:# 把当前i叠加进总和total = total + i# 计数器自增i += 1# 循环结束打印最终总和print("1~100累加总和:", total)
i = 0while i < 30:i += 1# 能被2整除代表偶数,跳过打印if i % 2 == 0:continueprint("奇数:", i)
# 设定标准答案answer = 8# 永久循环,等待用户输入while True:num = int(input("请输入1~10之间数字猜答案:"))if num > answer:print("猜大了,重新输入!")elif num < answer:print("猜小了,重新输入!")else:print("恭喜猜对,游戏结束!")# 猜对触发break,退出永久循环break
已知次数、遍历序列用for;未知次数、条件控制用while。
📖 往期历史笔记
Python 学习笔记|零基础第 1 天:Windows 系统完整安装教程 + 报错解决
Python 学习笔记| 第2天 Python Windows安装教程:VS Code 完整配置开发环境
Python零基础入门|第3天 Python变量、数据类型与输入输出
Python零基础入门| 第4天:字符串索引切片+列表完整增删改查
Python 零基础入门|第 5 天 for 循环与 range、break/continue
Python零基础入门|第7天 元组tuple、集合set、四大序列类型对比
✅ 回复【第6天源码】领取本章全套可运行源码 + 课后练习题代码报错、看不懂
知识点,可在评论区粘贴问题,逐一解答!
欢迎关注梅雅达编程笔记,持续分享Python零基础学习内容
本文为梅雅达编程笔记原创零基础 Python 连载笔记 禁止私自搬运、二次转载,转发请标注来源。