Python if-else 的多分支写法

舞姬之光
发布: 2025-11-17 21:03:05
原创
426人浏览过
多分支判断可用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)
登录后复制

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

法语写作助手
法语写作助手

法语助手旗下的AI智能写作平台,支持语法、拼写自动纠错,一键改写、润色你的法语作文。

法语写作助手 31
查看详情 法语写作助手
这种方式适合状态机、菜单选择等场景,代码更易维护。

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 版本和具体需求选择合适的方式,能让代码更清晰高效。

以上就是Python if-else 的多分支写法的详细内容,更多请关注php中文网其它相关文章!

相关标签:
最佳 Windows 性能的顶级免费优化软件
最佳 Windows 性能的顶级免费优化软件

每个人都需要一台速度更快、更稳定的 PC。随着时间的推移,垃圾文件、旧注册表数据和不必要的后台进程会占用资源并降低性能。幸运的是,许多工具可以让 Windows 保持平稳运行。

下载
来源:php中文网
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
最新问题
开源免费商场系统广告
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责申明 举报中心 意见反馈 讲师合作 广告合作 最新更新 English
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送
PHP中文网APP
随时随地碎片化学习

Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号