python利用dict模拟switch

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了python利用dict模拟switch相关的知识,希望对你有一定的参考价值。

pytho本身并未提供switch语句,但可以通过dict来模拟switch,

#方法1
def add(x,y):
    return x+y

def dec(x,y):
    return x-y

def multi(x,y):
    return x*y

def div(x,y):
    return x/y

operater = {+:add,-:dec,*:multi,/:div}
def calculator(x,o,y):
    return operater.get(o)(x,y)

#方法2
def calculator1(x,o,y):
    return {+:x+y,-:x-y,*:x*y,/:x/y}.get(o)

def test():
    print calculator(2, *, 6)
    print calculator1(2,+,6)
if __name__ == "__main__":
    test()
方法二每次调用时都需要生成dict。

以上是关于python利用dict模拟switch的主要内容,如果未能解决你的问题,请参考以下文章

dict 实现 switch能力

Python snippet(代码片段)

python之switch语句,优化多个if语句

python查看数据集的结构 (用dict实现switch-case)

Python代码阅读(第19篇):合并多个字典

Python小技巧:使用字典模拟 switch/case 语句