Pampy - Pattern Matching for Python
Pampy 是一个 Python 的模式匹配的库。
from pampy import match, _
def fibonacci(n):
return match(n,
1, 1,
2, 1,
_, lambda x: fibonacci(x-1) + fibonacci(x-2)
)
可以对 dict 进行解构:
>>> print(match({"a": "b", "c": "d"}, {"a": _, _: "d"}, lambda x, y: (x, y)))
("b", "c")
能简化不少代码,缺点是 _ 可能会被别的库用作别的用途。