Python

17|while 循环与状态更新

面向按顺序学习 Python 的初学者,本篇在第 16 篇知识上,帮助读者在条件成立时重复执行并保证循环结束。

◉ 1.2k 字◌ 8 分钟♙ 郑在混

这套课程按知识依赖排列。本篇的前置知识是:第 16 篇。学完后,你应该能够在条件成立时重复执行并保证循环结束。

本篇要解决的问题

本篇只处理“while 循环与状态更新”这一件事。示例基于 Python 3.14.6,在 macOS 环境核验;除明确标注的终端命令外,代码本身只使用 Python 标准能力。

先看清一个容易误解的细节

while 的条件检查与状态更新循环

while 每轮都经历“检查条件—执行循环体—更新状态—再次检查”。缺少状态更新时,条件可能永远成立,形成无限循环。

核心概念

  • 进入循环前先准备参与条件判断的状态。
  • 循环体中必须有机会让条件变为假。
  • 能够预先确定遍历对象时,后续介绍的 for 通常更直接。

跟着示例运行

把下面代码保存到本课脚本并运行:

count = 1

while count <= 3:
    print("第", count, "次练习")
    count = count + 1

print("练习结束")

预期结果:

第 1 次练习
第 2 次练习
第 3 次练习
练习结束

输出中包含环境路径、集合元素或日志格式时,具体文字和顺序可能随本机环境变化;判断是否成功应以本篇说明的关键结果为准。

按执行顺序拆开看

  1. 进入循环前 count 为 1,每轮开头判断它是否仍小于等于 3。
  2. 循环体末尾把 count 增加 1;当它变成 4 时条件为假,解释器跳到循环后的语句。

再看一个具体细节

追踪循环时,可以把每轮开始值、判断结果和更新后值写成表格。

count 在每轮怎样变化

第4次检查时 count 已经是4,条件为假,因此不会产生“第4次练习”的输出。

初学者容易混淆的地方

  • 漏掉状态更新,条件永远为真,只能手动中断程序。
  • 更新方向写反,例如条件要求递增退出却不断递减。设计循环时先写出状态如何接近结束条件。

练习

  1. 使用 while 输出 1 到 5。
  2. 计算 1 到 10 的累加和。

练习应先独立完成,再通过增加 print 输出或检查文件内容观察中间状态。当前课程尚未讲到的能力,不要求提前搜索复杂写法。

本篇边界

本篇目标是在条件成立时重复执行并保证循环结束。没有展开的高级机制会放到后续课程;先确保能够解释示例中每一行代码,再进入下一篇。

相关文章

© 2026 郑在混知识库 · 已运行 46 天 · 豫ICP备2026037626号-1