惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

P
Proofpoint News Feed
博客园_首页
WordPress大学
WordPress大学
大猫的无限游戏
大猫的无限游戏
有赞技术团队
有赞技术团队
阮一峰的网络日志
阮一峰的网络日志
Hugging Face - Blog
Hugging Face - Blog
博客园 - 【当耐特】
酷 壳 – CoolShell
酷 壳 – CoolShell
Y
Y Combinator Blog
Vercel News
Vercel News
The GitHub Blog
The GitHub Blog
T
The Blog of Author Tim Ferriss
云风的 BLOG
云风的 BLOG
博客园 - 司徒正美
Engineering at Meta
Engineering at Meta
钛媒体:引领未来商业与生活新知
钛媒体:引领未来商业与生活新知
J
Java Code Geeks
Stack Overflow Blog
Stack Overflow Blog
N
Netflix TechBlog - Medium
Martin Fowler
Martin Fowler
宝玉的分享
宝玉的分享
G
Google Developers Blog
Last Week in AI
Last Week in AI

木灵鱼儿

VS Code BYOK 配置生成器 - 木灵鱼儿 2026 最新禁止浏览器密码管理器弹出教程 - 木灵鱼儿 16 NestJS 企业级 RBAC 权限控制体系 - 木灵鱼儿 15 NestJS 统一响应体设计(信封模式) - 木灵鱼儿 14 NestJS 生产级错误过滤方案 - 木灵鱼儿 13 NestJS 集成 TypeORM 完全指南 - 木灵鱼儿 12 NestJS 集成 Prisma ORM 完全指南(Prisma v7) - 木灵鱼儿 11 NestJS 注册与登录接口的密码安全设计 - 木灵鱼儿 10 NestJS JWT 身份验证完全指南 - 木灵鱼儿 09 NestJS 使用 @nestjs-swagger 生成 API 文档 - 木灵鱼儿 08 NestJS DTO 校验、Entity 脱敏与 Mapped Types 实战(TypeORM & Prisma) - 木灵鱼儿 07 NestJS 使用Caching缓存(cache-manager) - 木灵鱼儿 06 NestJS 使用Redis - 木灵鱼儿 05 Nestjs 高性能构建之SWC与Typescript7选型 - 木灵鱼儿 04 Nestjs API版本控制策略 - 木灵鱼儿 NestJS 正确处理日志 - 木灵鱼儿 NestJS config模块扩展用法.md - 木灵鱼儿 宝塔如何给网站一次性绑定两个域名 - 木灵鱼儿 NestJS 环境变量与配置管理(Config 模块) - 木灵鱼儿 如何使用 FNM 自动切换不同项目的 Node.js 版本 - 木灵鱼儿 如何使用 Node.js Corepack 自动锁定和切换项目包管理器版本 - 木灵鱼儿 日常开发中的 void:从忽略 Promise 到理解 JavaScript 历史写法 - 木灵鱼儿 git 进阶指南:如何用 Git Worktree 完美应对紧急 Bug 与多分支联调 - 木灵鱼儿 了解并解决 Git 大小写“无感”的幽灵 Bug - 木灵鱼儿 从零开始:手把手教你封装一个企业级 Axios 请求模块 - 木灵鱼儿 03-Vue Query 高级进阶:应对复杂业务场景的硬核套路 - 木灵鱼儿 02-Vue Query 快速入门:从零构建你的第一个声明式查询 - 木灵鱼儿 01-异步状态管理新范式:为什么在 Vue 3 中使用 vue-query? - 木灵鱼儿 git 如何将所有历史提交合并为一条 - 木灵鱼儿 Windows 下如何快速复制目录的同时排除指定的目录和文件 - 木灵鱼儿
14 Python 分支语句if - 木灵鱼儿
木灵鱼儿 · 2026-01-28 · via 木灵鱼儿

前言

生活中我们无时无刻不在做选择:如果 明天下雨, 带伞;否则 戴墨镜。

在编程中,这种“做选择”的逻辑就是分支语句(也叫条件判断)。在Python中,我们主要使用 if(如果)、else(否则)这两个关键字来实现。

⚠️ 写在前面的重要规则:缩进

Python 和其他语言最大的不同在于:它靠“缩进”(通常是4个空格或1个Tab)来判断代码属于哪一部分。

  • 如果代码缩进了,说明它属于上面那行语句的“下级”。
  • 记住: 冒号 : 后面一定要换行并缩进!

1. 单分支语句 (if)

这是最简单的判断。只有当条件满足(为真)时,才执行代码;如果不满足,就什么都不做,直接跳过。

语法结构:

if 条件:
    # 条件成立时执行的代码

生活场景: 如果你满18岁了,就可以进网吧。

示例代码:

age = 20  # 定义一个年龄变量

if age >= 18:
    # 这行代码缩进了,只有条件满足才会执行
    print("恭喜你,已满18岁!")
    print("你可以进入网吧。")

2. 双分支语句 (if - else)

这个比单分支多了一个选择。如果条件满足,做A事;否则(条件不满足),做B事。二者必选其一。

语法结构:

if 条件:
    # 条件成立时执行的代码
else:
    # 条件不成立时执行的代码

生活场景: 考试成绩判断,及格了吃大餐,不及格吃“竹笋炒肉”。

示例代码:

score = 59  # 你的分数

if score >= 60:
    print("成绩及格!")
    print("奖励一顿火锅。")
else:
    # 注意 else 后面也有冒号
    print("成绩不及格...")
    print("准备回家挨骂吧。")

3. 分支嵌套 (if 里面还有 if)

所谓嵌套,就像“俄罗斯套娃”一样,在一个判断里面,再包一层判断。当你需要满足“层层关卡”才能触发结果时,就会用到嵌套。

语法结构:

if 条件1:
    if 条件2:
        # 条件1 和 条件2 都满足
    else:
        # 条件1 满足,但 条件2 不满足
else:
    # 条件1 就不满足

生活场景: 坐公交车。

  • 第一关:你有没有钱(或公交卡)?如果有,上车;如果没有,走路。
  • 第二关(上车后):有没有空座位?如果有,坐下;如果没有,站着。

示例代码:

has_money = True   # 有没有钱
has_seat = False   # 有没有座位

print("准备坐公交车...")

if has_money:
    print("投币成功,上车了!")

    # 开始进行第二层判断(注意缩进层级变深了)
    if has_seat:
        print("发现空座位,坐下休息。")
    else:
        print("哎呀没座位了,只能站着。")

else:
    # 对应最外层的 if
    print("身上没钱,只能走路回家了。")

💡 额外补充:多分支 (if - elif - else)

虽然你问的是单分支和双分支,但还有一个很常用的多分支,用于处理超过两种情况的场景。

生活场景: 这里的衣服有三个尺码:S码、M码、L码。

size = "M"

if size == "S":
    print("这是小号")
elif size == "M":  # elif 是 "else if" 的缩写,意思是“或者...”
    print("这是中号")
elif size == "L":
    print("这是大号")
else:
    print("没有这个尺码")

版权申明

本文系作者 @木灵鱼儿 原创发布在木灵鱼儿站点。未经许可,禁止转载。