Python while 循环 极简核心讲解

while 循环是 Python 中基础的条件循环 ,核心逻辑:只要条件为真,就重复执行循环体代码 ,适合不确定循环次数的场景,和适合固定次数的 for 循环形成互补。

1. 基本语法

python

运行

复制代码
while 条件表达式:
    循环体代码(缩进!)
    # 可选:修改条件的代码,避免死循环
  • 条件表达式:返回 True/False,成立则执行循环体
  • 缩进:Python 用缩进(4 个空格)标识循环体,必须有!
  • 死循环:条件永远为 True 会无限循环,需避免(除非主动控制退出)

2. 核心示例

示例 1:基础循环(固定次数,演示逻辑)

python

运行

复制代码
i = 0  # 初始化计数器
while i < 5:  # 条件:i小于5时执行
    print(f"当前i值:{i}")
    i += 1  # 计数器+1,修改条件,否则死循环

输出:

plaintext

复制代码
当前i值:0
当前i值:1
当前i值:2
当前i值:3
当前i值:4
示例 2:死循环 + 主动退出(break)

适合不确定循环次数,满足特定条件就退出的场景:

python

运行

复制代码
while True:  # 条件永远为True,死循环
    msg = input("输入任意内容(输入q退出):")
    if msg == "q":
        break  # 强制退出循环
    print(f"你输入了:{msg}")

3. 循环控制关键字(必学)

配合 while 循环使用,精准控制执行流程:

  1. break :直接退出整个循环,后续代码不再执行
  2. continue :跳过本次循环剩余代码,直接回到条件判断,进入下一次循环
  3. else (可选):循环正常结束(未被 break 中断)时,执行 else 代码块
控制关键字示例

python

运行

复制代码
i = 0
while i < 5:
    i += 1
    if i == 2:
        continue  # 跳过i=2,不执行后续print
    if i == 4:
        break     # 遇到i=4,直接退出循环
    print(f"执行:i={i}")
else:
    print("循环正常结束")  # 被break中断,此句不执行

输出:

plaintext

复制代码
执行:i=1
执行:i=3

4. 核心注意点

✅ 初始化循环变量 (如示例的 i=0)✅ 循环体内必须修改条件 (如 i +=1),否则会无限死循环✅ 缩进严格遵循 Python 规则,循环体代码必须缩进✅ 不确定循环次数用 while,固定次数优先用 for 循环

总结

  1. while 循环:条件为真就执行,适配未知循环次数场景;
  2. 三大核心控制:break(退出)、continue(跳过)、else(正常结束执行);
  3. 必做操作:初始化变量 + 循环内修改条件,避免死循环。
相关推荐
艾派森3 分钟前
Web Scraper API vs 自建爬虫:一次真实对比测试,结果让人震惊
爬虫·python·网络爬虫
hexu_blog6 分钟前
springboot3集成shardingsphere4.0 分表分库
java·spring boot·mybatis
乐观的Terry8 分钟前
9、发布系统-Webhook自动发布
java·spring boot·spring·spring cloud·mybatis
小柯南敲键盘10 分钟前
AI批量翻译Temu商品标题的Python实践
开发语言·人工智能·python
PH = 712 分钟前
SpringBoot使用自动装配编写Start包
java·spring boot·后端
逆境不可逃13 分钟前
Java JUC 同步工具类一次讲透:CountDownLatch、CyclicBarrier、Semaphore、Phaser 与 AQS 共享模式
java·开发语言·python
知识分享小能手15 分钟前
统计学学习教程,从入门到精通,一元线性回归 —— 知识点详解(17)
学习·算法·线性回归
遥感知识服务19 分钟前
SMAP看每天有多少水,Landsat告诉水最可能出现在哪里:拆解Idai洪水数据驱动预报
python
酉鬼女又兒32 分钟前
[特殊字符]零基础入门AI:归纳演绎、假设空间、归纳偏好、NFL、过拟合与欠拟合、模型评估选择、超参数、性能度量、混淆矩阵、P-R曲线和F1
人工智能·windows·python·深度学习·安全·机器学习·矩阵
xlq2232237 分钟前
高并发服务器day5
java·服务器·数据库