大家好,我是小吴!欢迎来到从零开始学Python第八期。
不知道大家有没有发现,之前我们写的代码,清一色都是「一次性程序」—— 每次运行只完成一件事。拿温度转换举例,算完一次就自动结束;想要再算一次,就得重新点击运行。反复操作,实在太麻烦了。
正好学到了 while 循环,本期就用它来彻底解决这个问题:让程序持续运行,想跑几轮就跑几轮;想什么时候停止,输入指定内容就能立刻结束,省心又省力。
一、while 循环是什么?
循环,顾名思义,就是让代码重复执行。只要条件成立,代码就会一遍又一遍运行;直到条件不成立,才会停止。简单说——“条件说停,才能停”。
二、while 循环核心知识点
1. while 循环基础语法
while 循环的语法规则十分直观,它与 for 循环同为 Python 的两大循环结构。
while 循环条件: 循环体代码 # 需要重复执行的内容
执行流程:
• 先判断「循环条件」是否为真(True)
• 如果条件为真,就执行缩进内的循环体代码
• 代码执行完毕后,再次回到条件判断,开启下一轮循环
• 一旦条件变为假(False),立刻跳出循环,结束运行
2. 循环条件
循环的启动与终止,完全由条件掌控:
• 条件持续成立 → 循环持续运行
• 条件一旦不成立 → 循环立刻停止
因此编写循环代码时,最核心的就是设计合理的循环条件,让程序按照我们的预期启动和结束。
3. 死循环
程序启动后一直运行、无法停止,这就是死循环。死循环的根本原因只有一个:循环条件永远为真,没有终止的机会。
常见错误:
• 条件写死了(比如 while True: 没有退出语句)
• 循环体内忘记修改条件的变量,导致条件永远满足
所以写循环时,记得留好“后路”。
那么,怎么留后路呢?主要有两条路:
第一种:设计循环条件,让它在某个时刻自动变为False。比如使用计数器限制循环次数,或是根据用户输入修改条件变量,让循环运行到特定节点自行结束。
第二种:在循环体内主动使用 break 语句。一旦执行break,无论循环条件是否成立,都会直接终止整个循环。
break 一般配合 if 一起使用:当触发特定条件(例如用户输入 q),就执行break。就像我们温度转换器中的写法:
⚠️注意:break 只能写在 while、for 的循环体内部,如果写在循环外部,Python 会直接报错。
4. 缩进规则
Python 依靠缩进区分代码层级,循环的缩进千万不能混乱!
• 缩进 4 个空格:属于循环体,会被重复执行
• 不缩进:不属于循环体,只会执行一次
多一个空格、少一个空格,要么直接报错,要么程序逻辑错乱。前面几期已经强调,这里再提醒一遍,务必留意!
三、实战案例:可循环的温度转换器
知识点看完,我们来动手实操吧。继续沿用温度转换的代码,毕竟现成的代码,直接用😄
项目功能需求:
• 程序启动后不会直接退出,支持多次温度转换
• 输入温度数值和温度标识,即可输出转换结果
• 输入指定字符(例如 q),直接退出程序
完整代码
重要代码解析
while True: —— 开启无限循环,默认条件永远成立;
if Temp == "q": —— 如果用户输入字母 q,执行该语句下方代码块,打印提示:程序已退出!再通过 break跳出循环,结束程序运行。
本期我们掌握了基础的 while 循环,下一期,我们就来学习 Python 的另一个循环 ——for 循环!✨