Python本着“简单”的设计原则,控制语句只有判断流程if…else…和循环语句while/for,并没有类似于C语言的switch语句。
这样,带来的问题是遇到多条件判断时只能使用if判断语句,导致一大堆的if语句,代码丑陋不美观。
'''
遇到问题没人解答?小编创建了一个Python学习交流QQ群:579817333
寻找有志同道合的小伙伴,互帮互助,群里还有不错的视频学习教程和PDF电子书!
'''
if i == 1:
statement
elif i == 2:
statement
...
...
...
else:
statement
有没有办法实现switch语句呢,答案必须是有的!我们可以使用字典(dict)的get方法。
'''
遇到问题没人解答?小编创建了一个Python学习交流QQ群:579817333
寻找有志同道合的小伙伴,互帮互助,群里还有不错的视频学习教程和PDF电子书!
'''
def switch_case(value):
switcher = {
0: "zero",
1: "one",
2: "two",
}
return switcher.get(value, 'wrong value')
上面的代码等价于switch语句,即传入的参数如果是字典的索引键值,就可以得到相应的得到字典的值,如果没有匹配到相应的字典键值,就得到默认值(这里是’wrong value’)。