有没有办法匹配 Python ≥ 3.10 的不等式?
Is there a way to match inequalities in Python ≥ 3.10?
Python3.10 中新的结构模式匹配功能是一个非常受欢迎的功能。有没有办法使用这个语句来匹配不平等?原型示例:
match a:
case < 42:
print('Less')
case == 42:
print('The answer')
case > 42:
print('Greater')
您可以使用 guards:
match a:
case _ if a < 42:
print('Less')
case _ if a == 42:
print('The answer')
case _ if a > 42:
print('Greater')
另一个选项,没有守卫,使用纯模式匹配:
match [a < 42, a == 42]:
case [True, False]:
print('Less')
case [_, True]:
print('The answer')
case [False, False]:
print('Greater')
Python3.10 中新的结构模式匹配功能是一个非常受欢迎的功能。有没有办法使用这个语句来匹配不平等?原型示例:
match a:
case < 42:
print('Less')
case == 42:
print('The answer')
case > 42:
print('Greater')
您可以使用 guards:
match a:
case _ if a < 42:
print('Less')
case _ if a == 42:
print('The answer')
case _ if a > 42:
print('Greater')
另一个选项,没有守卫,使用纯模式匹配:
match [a < 42, a == 42]:
case [True, False]:
print('Less')
case [_, True]:
print('The answer')
case [False, False]:
print('Greater')