python3.8中match语句应该怎么表达
时间: 2024-10-20 09:19:45 浏览: 35
在Python 3.8及更高版本中,`match`语句(也称为模式匹配)是从Python 3.10开始引入的新特性,它主要用于解析和验证元组、列表、字典等结构的值,特别是用于更清晰地处理异常情况。`match`语法类似于正则表达式的模式匹配,但它更为灵活,可以用于多种类型的值。
基本的`match`语句格式如下:
```python
match target_expression:
case pattern_1:
# 当target_expression匹配pattern_1时,执行这里的代码
...
case pattern_2:
...
...
default:
# 如果所有case都不匹配,则执行default部分的代码(可选)
...
```
例如,假设我们有一个函数接收一个整数作为输入,并想确认它是正数、零还是负数:
```python
def handle_number(num):
match num:
case 0:
print("Number is zero")
case x if x > 0:
print(f"Number is positive: {x}")
case x if x < 0:
print(f"Number is negative: {-x}")
handle_number(5) # 输出 "Number is positive: 5"
handle_number(0) # 输出 "Number is zero"
handle_number(-3) # 输出 "Number is negative: 3"
```
阅读全文