Python中是没有switch-case语句的 —— 因为完全可以用if else模拟?根据python哲学,于是switch-case就没有了。

可以用字典和lambda模拟一个简单的switch-case。个人觉得这个方法有趣程度大于实用程度。

#FileName:pysw.py

sw = {

    'a': lambda x: x,

    'b': lambda x: x + 1,

    'c': lambda x: x * x,

}

sw['a'](2)

sw['b'](2)

sw['c'](2)

 

结果输出

2

3

4

 

参考

【1】http://www.codecho.com/switch-case-in-python/