python技巧 switch case语句

Posted flashboxer

tags:

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

不同于C语言和SHELL,python中没有switch case语句,关于为什么没有,官方的解释是这样的

使用Python模拟实现的方法:

 

def switch_if(fun, x, y):
    if fun == ‘add‘:
        return x + y
    elif fun == ‘sub‘:
        return x - y
    elif fun == ‘mul‘:
        return x * y
    elif fun == ‘div‘:
        return x / y
    else:
        return None


def switch_dict(fun, x, y):
    return {
        ‘add‘: lambda: x + y,
        ‘sub‘: lambda: x - y,
        ‘mul‘: lambda: x * y,
        ‘div‘: lambda: x / y,
    }.get(fun,None)()


print("switch_if(‘add‘,1,2):",switch_if(‘add‘,1,2))
print("switch_if(‘sub‘,1,2):",switch_if(‘sub‘,1,2))
print("switch_if(‘mul‘,1,2):",switch_if(‘mul‘,1,2))
print("switch_if(‘div‘,1,2):",switch_if(‘div‘,1,2))

print("switch_dict(‘add‘,1,2):",switch_dict(‘add‘,1,2))
print("switch_dict(‘sub‘,1,2):",switch_dict(‘sub‘,1,2))
print("switch_dict(‘mul‘,1,2):",switch_dict(‘mul‘,1,2))
print("switch_dict(‘div‘,1,2):",switch_dict(‘div‘,1,2))

 

 

switch_if(‘add‘,1,2): 3
switch_if(‘sub‘,1,2): -1
switch_if(‘mul‘,1,2): 2
switch_if(‘div‘,1,2): 0.5
switch_dict(‘add‘,1,2): 3
switch_dict(‘sub‘,1,2): -1
switch_dict(‘mul‘,1,2): 2
switch_dict(‘div‘,1,2): 0.5

 








































以上是关于python技巧 switch case语句的主要内容,如果未能解决你的问题,请参考以下文章

case/switch 语句的 Python 等效项是啥? [复制]

Python | 基础系列 ·?Python为什么没有switch/case语句?

python Python:使用字典创建switch case语句

Python 类似switch/case语句实现方法 获取文件内容匹配函数并执行

python里有没有类似与c语言switch...case...的条件判断语句

Python里怎么实现switch case