Python里是没有像其他语言,如java里的switch...case这样的表达式。
替代方案一:map下标
def f(x):
return {
'a': 1,
'b': 2,
}[x]
使用下标的方式,可以很简洁的获取想要的值。但这种方法有一个弊端,如果不存在时,不能返回一个默认的值。
替代方案:使用if-elif
if x == 'a':
# 满足条件,进行处理
elif x == 'b':
# 满足条件,进行处理
if x in 'bc':
# 满足条件,进行处理
elif x in 'xyz':
# 满足条件,进行处理
else:
# 默认