网站首页 > 技术文章 正文
Python 编程语言正在不断发展,每次更新都会添加新的特性和功能。Python 3.10 发布后,增加了多分支选择语句,也称为 match-case 语句。这是 Python 3.10 最重要的新功能,允许在多个条件下更轻松地控制程序流程。

在本文中,我们将学习 Python 中的 match-case 语句。
match-case 语法格式:
parameter="zbxx.net"
match parameter:
case first :
do_something(first)
case second :
do_something(second)
............
............
case n :
do_something(n)
case _ :
nothing_matched_function()
match-case 语句使用 match 关键字初始化并获取一个参数,然后使用 case 关键字与参数匹配。“_”是通配符,当没有任何匹配项时运行。
match-case 实例:
day=input("请输入一个数字(1 - 7):")
match day:
case "1":
print("星期一")
case "2":
print("星期二")
case "3":
print("星期三")
case "4":
print("星期四")
case "5":
print("星期五")
case "6":
print("星期六")
case "7":
print("星期日")
case _:
print("请输入一个有效数字!")
match-case 匹配类型和结构
Python 的另一个令人难以置信的功能是能够匹配类型和结构。这意味着 Python 可以判断一个对象是否是可迭代的,可以从中提取值,检查传入的内容的类型。
values=['zbxx.net']
match values:
case [a]:
print(f'只有一个元素:{a}')
case [a, b]:
print(f'两个元素:{a},{b}')
case [a, b, c]:
print(f'三个元素:{a},{b},{c}')
case [a, b, c, *other]:
print(f'不止三个元素:{a}{b}{c},还有:{other}')
#输出:只有一个元素:zbxx.net
values=['https://','www.','zbxx.net','1','2','3']
match values:
case [a]:
print(f'只有一个元素:{a}')
case [a, b]:
print(f'两个元素:{a},{b}')
case [a, b, c]:
print(f'三个元素:{a},{b},{c}')
case [a, b, c, *other]:
print(f'不止三个元素:{a}{b}{c},还有:{other}')
#输出:不止三个元素:https://www.zbxx.net,还有:['1', '2', '3']
def type_of(var):
match var:
case int() | float() as var:
return "数值"
case dict() as var:
return "字典"
case list() | tuple() | set() as var:
return "列表,元组,集合"
case str() as var:
return "字符串"
case _:
return "其他类型"
print(type_of(1)) #输出:数值
print(type_of((1,2))) #输出:列表,元组,集合
「文章创作不易,如果您喜欢这篇文章,请关注、点赞并分享给朋友。如有意见和建议,请在评论中反馈!」
猜你喜欢
- 2024-12-17 Python 中双冒号“::”是什么运算符,有什么功能
- 2024-12-17 Python中实现线程和多线程开发以及线程安全功能示例
- 2024-12-17 Python3.6-3.10发布时间及主要新增功能
- 2024-12-17 用Python实现Wake On Lan远程开机功能
- 2024-12-17 python pillow图像处理功能及应用
- 2024-12-17 Python range() 函数的功能增强版 arange()、linspace()
- 2024-12-17 python每天学习一点点(模拟10086查询功能简易版)
- 2024-12-17 Python 3.13 中5 个新增的功能将改变您的编码方式
- 2024-12-17 用python实现图像查找功能
- 2024-12-17 利用python实现彩票大乐透机器选号功能
- 05-25Python 3.14 t-string 要来了,它与 f-string 有何不同?
- 05-25Python基础元素语法总结
- 05-25Python中的变量是什么东西?
- 05-25新手常见的python报错及解决方案
- 05-2511-Python变量
- 05-2510个每个人都是需要知道Python问题
- 05-25Python编程:轻松掌握函数定义、类型及其参数传递方式
- 05-25Python基础语法
- 257℃Python短文,Python中的嵌套条件语句(六)
- 257℃python笔记:for循环嵌套。end=""的作用,图形打印
- 256℃PythonNet:实现Python与.Net代码相互调用!
- 251℃Python操作Sqlserver数据库(多库同时异步执行:增删改查)
- 251℃Python实现字符串小写转大写并写入文件
- 106℃原来2025是完美的平方年,一起探索六种平方的算吧
- 91℃Python 和 JavaScript 终于联姻了!PythonMonkey 要火?
- 81℃Ollama v0.4.5-v0.4.7 更新集合:Ollama Python 库改进、新模型支持
- 最近发表
- 标签列表
-
- python中类 (31)
- python 迭代 (34)
- python 小写 (35)
- python怎么输出 (33)
- python 日志 (35)
- python语音 (31)
- python 工程师 (34)
- python3 安装 (31)
- python音乐 (31)
- 安卓 python (32)
- python 小游戏 (32)
- python 安卓 (31)
- python聚类 (34)
- python向量 (31)
- python大全 (31)
- python次方 (33)
- python桌面 (32)
- python总结 (34)
- python浏览器 (32)
- python 请求 (32)
- python 前端 (32)
- python验证码 (33)
- python 题目 (32)
- python 文件写 (33)
- python中的用法 (32)