Python中模式匹配
时间: 2024-09-11 09:08:25 浏览: 64
Python正则表达式如何匹配中文
Python中的模式匹配主要通过match语句和case语句来实现,这是一种从Python 3.10版本开始引入的特性,允许开发人员根据对象的不同结构进行条件检查。模式匹配提供了一种更清晰和直观的方式来检查数据的形状并从中提取信息。
一个简单的模式匹配示例代码如下:
```python
def http_error(status):
match status:
case 400:
return "Bad request"
case 404:
return "Not Found"
case 418:
return "I'm a teapot"
case _:
return "Something's wrong with the internet"
```
在上面的例子中,`match`语句对`status`变量进行模式匹配,`case`关键字后跟的是模式,以及一个冒号。如果`status`与某个模式匹配,那么就执行该`case`下的代码块。
模式匹配还包括多种类型的模式,比如:
- 常量模式:如上述代码中的数字400、404和418。
- 变量模式:如果不想关心某个值,可以使用变量(如`_`)来捕获任何值。
- 序列模式:用于列表或元组等序列类型。
- 映射模式:用于字典等映射类型。
- 类模式:与特定类的实例匹配。
- OR模式和as模式:用于匹配多个模式或在匹配成功时绑定变量。
阅读全文