Python 中没有 switch/case 语法,如果使用 if/elif/else 会出现代码过长、易读性差等问题。
我们可以借助字典实现 switch 的功能。
def fun1(): # 执行函数1
print('This is the fun1')
def fun2(): # 执行函数2
print('This is the fun2')
def fun3(): # 执行函数3
print('This is the fun3')
def default(): #执行默认函数
print('No such fun')
switch = {' fun1': fun1, # 注意此处不要加括号
' fun2': fun2,
' fun3': fun3,
}
switch.get( ' fun1', default)() # 根据key执行对应的函数,如果没有就执行默认的函数
dict.get(key, default=None)
python初学者通常使用get只使用第一个参数,它还有一个默认参数,如果键不在字典中返回默认值 None 或者设置的默认值。