- python已经有三元表达式了,另外也可以考虑用lambda表达式来实现:
status = "adult" if age >= 18 else "child" even_odd = lambda num: 'even' if num % 2 == 0 else 'odd' - 对于枚举的match-case,如果是在python里面,那么有更简洁的写法:
# 标准实现 def get_action_num(action: str) -> int: if action == "start": ret = 1 elif action == "stop": ret = 2 elif action == "restart": ret = 3 else: ret = 0 return ret print(get_action_num("start")) # 使用字典映射代替多个if-else def get_action_num_2(action: str) -> int: return { "start": 1, "stop": 2, "restart": 3, #这里就自己去理解枚举的写法了 }.get(action, 0) - 公司的