讲师中心 微信公众号
AI工具推荐 视频效率加速

Python if-else 的多分支写法

梦杰小哥_1326

梦杰小哥_1326

发布时间:2025-11-17 21:03:05

|

515人浏览过

|

来源于php中文网

原创

多分支判断可用if-elif-else、字典映射、match-case(Python 3.10+)或条件列表结合next()实现,根据场景选择更简洁高效的方式。

python if-else 的多分支写法

Python 中处理多分支条件判断时,除了使用多个 if-elif-else 结构外,还有更简洁、清晰的写法。下面介绍几种常见的多分支实现方式。

1. 使用 if-elif-else 链

这是最基础也是最常用的多分支结构,适合条件明确且数量不多的情况。

示例:

x = 2<br>if x == 1:<br>    print("选项一")<br>elif x == 2:<br>    print("选项二")<br>elif x == 3:<br>    print("选项三")<br>else:<br>    print("其他")

注意:条件从上到下依次判断,一旦某个条件为真,其余分支将不再执行。

2. 使用字典映射函数或值

当分支较多且逻辑简单时,可以用字典代替多个 elif,提高可读性和性能。

示例:用字典映射返回值

def get_grade(score):<br>    return {<br>        'A': '优秀',<br>        'B': '良好',<br>        'C': '及格',<br>        'D': '不及格'<br>    }.get(score, '未知')

示例:映射函数

def handle_a():<br>    return "处理 A"<br><br>def handle_b():<br>    return "处理 B"<br><br>actions = {<br>    'a': handle_a,<br>    'b': handle_b,<br>    'c': lambda: "处理 C"<br>}<br><br>result = actions.get('a', lambda: "默认处理")()<br>print(result)

Shadows Python Sensei
Shadows Python Sensei

Python 最佳实践助手——代码规范、设计模式、性能优化、测试与类型注解。适用于编写或审查 Python 代码。

下载

立即学习“Python免费学习笔记(深入)”;

这种方式适合状态机、菜单选择等场景,代码更易维护。

3. 使用 match-case(Python 3.10+)

Python 3.10 引入了模式匹配 match-case,语法更接近传统 switch-case。

示例:

x = 'blue'<br>match x:<br>    case 'red':<br>        print("红色")<br>    case 'green':<br>        print("绿色")<br>    case 'blue':<br>        print("蓝色")<br>    case _:<br>        print("未知颜色")

支持复杂模式匹配,如元组、类实例等,但对简单多分支已足够强大。

4. 使用列表或元组包含条件表达式

适用于返回固定值的简单判断,可以结合 next() 和生成器使用。

示例:通过条件列表查找第一个匹配项

x = 75<br>result = next(<br>    msg for condition, msg in [<br>        (x >= 90, "优秀"),<br>        (x >= 70, "良好"),<br>        (x >= 60, "及格")<br>    ] if condition<br>, "不及格")<br>print(result)  # 输出:良好

这种写法紧凑,适合数值区间判断等场景。

基本上就这些常用方法。根据 Python 版本和具体需求选择合适的方式,能让代码更清晰高效。

热门AI工具

更多
咔片AIPPT

一款在线AI演示文稿制作工具,可根据主题和内容需求辅助生成PPT结构与页面,提高演示材料制作效率。

LibLibAI
LibLibAI Hot

一款AI视频创作工具,主要用于国内领先的AI创意平台,以海量模型、低门槛操作与“创作-分享-商业化”生态,让小白与专业创作者都能高效实现图文乃至视频创意表达,适合需要提升相关任务效率的用户。

Atoms
Atoms Hot

Atoms是一款AI智能体工具,第一支自动构建真实业务的 AI 团队。

DeepSeek

DeepSeek是一款面向对话、写作、编程和推理场景的AI大模型工具。

Lovart
Lovart Hot

一款面向视觉设计创作的AI设计平台,可通过智能体和画布工作流辅助制作海报、Logo、网页、PPT及其他视觉内容。

超级简历WonderCV

一款AI办公效率工具,主要用于免费求职简历模版下载制作,应届生职场人必备简历制作神器,适合需要提升相关任务效率的用户。

墨刀AI
墨刀AI Hot

一款AI图像与设计工具,主要用于产品经理的专属智能体,适合需要提升相关任务效率的用户。

豆包大模型

豆包大模型是一款由字节跳动推出的企业级大语言模型服务平台。

WorkBuddy

一款AI办公效率工具,主要用于腾讯云推出的AI原生桌面智能体工作台,适合需要提升相关任务效率的用户。

相关专题

更多
switch语句用法
switch语句用法

switch语句用法:1、Switch语句只能用于整数类型,枚举类型和String类型,不能用于浮点数类型和布尔类型;2、每个case语句后面必须跟着一个break语句,以防止执行其他case的代码块,没有break语句,将会继续执行下一个case的代码块;3、可以在一个case语句中匹配多个值,使用逗号分隔;4、Switch语句中的default代码块是可选的等等。

1031

2023.09.21

Java switch的用法
Java switch的用法

Java中的switch语句用于根据不同的条件执行不同的代码块。想了解更多switch的相关内容,可以阅读本专题下面的文章。

1357

2024.03.13

Buffalo框架数据库开发全教程
Buffalo框架数据库开发全教程

本专题围绕Buffalo框架数据库开发,讲解database.yml多环境配置、soda与fizz迁移生成回滚、模型结构体标签、增删改查与条件查询、一对多与多对多关联、数据校验、回调钩子、事务处理及原生SQL执行能力。

20

2026.09.23

Buffalo框架路由与请求处理实操指南
Buffalo框架路由与请求处理实操指南

本专题讲解Buffalo框架路由与请求处理机制,涵盖路由注册与分组、资源路由、Handler编写规范、Context上下文方法、参数绑定、中间件编写挂载、Session与Cookie读写、Flash消息及错误页面定制方法。

0

2026.09.23

Buffalo框架零基础入门教程
Buffalo框架零基础入门教程

本专题整理Buffalo框架入门内容,涵盖Go环境准备、buffalo CLI安装、新项目生成、目录结构说明、dev热加载启动、数据库连接配置与常见报错排查,帮助新手按约定优于配置的思路跑通第一个Buffalo框架应用。

0

2026.09.23

Conan创建软件包配方指南
Conan创建软件包配方指南

本专题介绍通过conanfile.py创建软件包的方法,讲解包名、版本、依赖和构建设置等基础信息,以及source、build、package、package_info等常用方法的作用及编写思路。

0

2026.09.22

Conan二进制包配置指南
Conan二进制包配置指南

本专题介绍Conan根据操作系统、编译器、架构和构建类型生成二进制包的方法,讲解Profile、Settings、Options及Package ID的作用,帮助管理不同平台和编译环境下的包版本。

20

2026.09.22

Conan私有仓库搭建教程
Conan私有仓库搭建教程

本专题系统的讲解Conan私有仓库的搭建流程,涵盖仓库服务部署、存储目录配置、用户认证、权限划分和远程地址添加,并介绍内部C++依赖包的上传、下载及版本维护方法。

0

2026.09.22

loomy官网入口地址合集
loomy官网入口地址合集

本专题汇总了 Loomy 桌面 AI 助理的官方入口地址合集及使用指南。提供 macOS 与 Windows 客户端下载 。Loomy 是讯飞推出的桌面级 AI 工作搭子,支持文件整理、数据分析、网页操作及通过飞书/钉钉远程操控电脑,助你高效完成本地办公任务 。

0

2026.09.22

热门下载

更多
网站特效
/
网站源码
/
网站素材
/
前端模板

精品课程

更多
相关推荐
/
热门推荐
/
最新课程
关于我们 免责申明 举报中心 意见反馈 讲师合作 广告合作 最新更新
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号
PHP中文网订阅号
每天精选资源文章推送

Copyright 2014-2026 https://www.php.cn/ All Rights Reserved | php.cn