python 中的"switch"用法

转载:http://python.jobbole.com/82008/

为什么Python中没有Switch/Case语句?

不同于我用过的其它编程语言,Python 没有 switch / case 语句。为了实现它,我们可以使用字典映射:

这段代码类似于:

函数的字典映射

在 Python 中字典映射也可以包含函数或者 lambda 表达式:

虽然 zero 和 one 中的代码很简单,但是很多 Python 程序使用这样的字典映射来调度复杂的流程。

example:

def switch_test_item(item, index_b,exename,version,vercheck):
switcher = {
"CPU": CPU_TEST,
"Memory":MEMORY_TEST,
"BIOSVER":BIOSVER_TEST,
"FAN":FAN_TEST,
}
return switcher[item](index_b,exename,version,vercheck)
def CPU_TEST(index_b,exename,version,vercheck):
{
...
}

然后switch_test_item就把index_b,exename,version,vercheck都传递给CPU_TEST等功能函数
原文地址:https://www.cnblogs.com/deadwood-2016/p/8249917.html