python实现switch功能

许多编程语言都有switch功能,但python我行我素的奉行着极简的python哲学,没有switch语句。不过它用一种更巧妙的方式将switch悄悄的藏了起来。
python字典可以实现switch功能,举两个具体例子说明:
首先可以用普通函数来实现特定功能:

# 定义需要使用的功能函数
def add(x,y):  
    return x+y  
def cut(x,y):  
    return x-y  
def multi(x,y):  
    return x*y  
def div(x,y):  
    return x/y  
# 定义调用这些函数的字典
operation = {'+':add,'-':cut,'*':multi,'/':div}
# 通过Python字典的get方法调用函数(别忘了输入参数噢)  
print operation['+'](1,2)  
print add(1,2)  

如果函数体非常简单,为了让代码更加清晰可读。这个也可以通过python的lambda表达式实现:

# 用lambda表达式定义python的字典
operation = {'+':lambda a,b:a+b,
'-':lambda a,b:a-b,
'*':lambda a,b:a*b,
'/':lambda a,b:a/b}
# 直接通过字典调用方法即可  
print operation['+'](1,2)  
print add(1,2)  

提到lambda表达式,这是贯彻python简洁易读风格的良好方法。之前也提到过几种比较常用的三目运算符,在我的前一篇文章“算法高级进阶简述”里有提到另外两种表达方式,日常工作研究中概要多使用这些高级表达方式。

  • 2
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值