不同于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