替代Python中的switch语句?

我想在Python中编写一个函数,它根据输入索引的值返回不同的固定值。

在其他语言中,我会使用switchcase语句,但Python似乎没有switch语句。 在这种情况下推荐的Python解决方案是什么?


你可以使用字典:

def f(x):
    return {
        'a': 1,
        'b': 2,
    }[x]

如果你想使用默认值,你可以使用字典get(key[, default])方法:

def f(x):
    return {
        'a': 1,
        'b': 2
    }.get(x, 9)    # 9 is default if x not found

我一直喜欢这样做

result = {
  'a': lambda x: x * 5,
  'b': lambda x: x + 7,
  'c': lambda x: x - 2
}[value](x)

从这里

链接地址: http://www.djcxy.com/p/1135.html

上一篇: Replacements for switch statement in Python?

下一篇: How to move an element into another element?