首页 > 技术文章 > Python-匿名函数

dachenzi 2016-11-23 22:22 原文

lambda 函数是一种快速定义单行的最小函数,可以用在任何需要函数的地方
 
常规版本:
def fun(x,y)
    return x*y
lambda版本:
r = lambda x,y:x*y
print r(2,3)
格式:
  lambda 参数列表:return [表达式] 变量
  由于lambda返回的是函数对象(构建的是一个函数对象),所以需要定义一个变量去接收
 
匿名函数优点:
  - 使用Python写一些脚本时,使用lambda可以省去定义函数的过程,让代码更加精简。
  - 对于一些抽象的,不会被别的地方再重复使用的函数,有时候函数起个名字也是个难题,使用lambda不需要考虑命名的问题
  - 使用lambda在某些时候然后代码更容易理解
 
搭配reduce的应用
  reduce(fun,list)
    reduce依次把list中的数字赋值给fun进行计算
    注意fun必须是连个数字间的运算,list必须是整型数字
 
例:求1到100的累加
reduce (lambda x,y:x + y,xrange(1,101)

 

 
 

推荐阅读