Python全系列 教程
3567个小节阅读:5929.5k
目录
鸿蒙应用开发
C语言快速入门
JAVA全系列 教程
面向对象的程序设计语言
Python全系列 教程
Python3.x版本,未来主流的版本
人工智能 教程
顺势而为,AI创新未来
大厂算法 教程
算法,程序员自我提升必经之路
C++ 教程
一门通用计算机编程语言
微服务 教程
目前业界流行的框架组合
web前端全系列 教程
通向WEB技术世界的钥匙
大数据全系列 教程
站在云端操控万千数据
AIGC全能工具班
A A
White Night
match...case结构化模式匹配,可以匹配字典、类以及其他更复杂的结构。match...case的匹配模式匹配于Java或C++中的switch的使用很相似。
xxxxxxxxxx
# 语句结构
'''
match subject:
case <pattern_1>:
<action_1>
case <pattern_2>:
<action_2>
case <pattern_3>:
<action_3>
case _:
<action_wildcard>
'''
status = 200
match status:
case 200:
print('访问成功')
case 404:
print('页面丢了')
case _:
print('不能识别')
xxxxxxxxxx
#模式匹配
person1 = ('James',23,'male')
person2 = ('Lili',33,'female')
person3 = ('Mary',34,'female')
def func(person):
match person:
case (name,_,'female'):
print(f'{name} is woman')
case (name,_,'male'):
print(f'{name} is man')
case (name,age,gender):
print(f'{name} is {age} old')
#调用函数
func(person1)
func(person2)
func(person3)
上述代码中,case函数通过匹配元组,如果元组第三个参数是“female”,匹配到第一个case。如果元组第三个参数是“male”,匹配到第二个case。如果前面两个都不匹配,则输出最后的默认结果。
实时学习反馈
1. _______结构化模式匹配,可以匹配字典、类以及其他更复杂的结构。和Java或C++中的switch的使用很相似。
A match...case
B case
C match...else
2. 下面代码运行的结果是_____:
xxxxxxxxxx
status = 200
match status:
case 200:
print('访问成功')
case 404:
print('页面丢了')
case _:
print('不能识别')
A 访问成功
B 页面丢了
C 不能识别
答案
1=>A 2=>A