Python的switch实现

来源:互联网 发布:linux系统工程师培训 编辑:程序博客网 时间:2024/05/16 23:35

通常情况下,我们常用字典函数实现Python的switch语句:

#coding:utf8#add minus divide using pythonfrom __future__ import divisiondef jia(x,y):    return x+ydef jian(x,y):    return x-ydef cheng(x,y):    return x*ydef chu(x,y):    return x/yoperator={"+":jia,"-":jian,"*":cheng,"/":chu}def f(x,o,y):    print(operator.get(o)(x,y))f(1,'+',3)f(1,'-',3)f(2,'*',3)f(1,'/',3)

当然,还有一种更简洁的方法:

#coding:utf8#add minus divide using pythonfrom __future__ import divisionx=1y=2operator='/'result={"+":x+y,"-":x-y,"*":x*y,"/":x/y}print(result.get(operator))

如果你理解了上面的代码,那下面代码的意思也就不难理解了:

{1:case1,2:case2}.get(x,lambda *args,**key:)()


0 0
原创粉丝点击