Python匿名函数 lambda

Python匿名函数 lambda,第1张

Python匿名函数 lambda

lambda函数,即lambda 表达式,是一个匿名函数(不存在函数名的函数),lambda表达式基于数学中的λ演算得名,直接对应于其中的lambda抽象(lambda abstraction)。

一、lambda函数也叫匿名函数,即函数没有具体的名称。先来看一个最简单例子:

add=lambda x,y:x+y
print(add(1,2))
实例输出结果:
3

二、lambda和普通的函数相比,就是省去了函数名称而已。

  1. 使用Python写一些执行脚本时,使用lambda可以省去定义函数的过程,让代码更加精简。

  2. 对于一些抽象的,不会在别的地方再复用的函数,有时候给函数起个名字也是个难题,使用lambda不需要考虑命名的问题。

  3. 使用lambda在某些时候让代码更容易理解。

lambda函数声明形式如下:
lambda argument_list:expression

语法中的argument_list是参数列表,它的结构与Python中函数(function)的参数列表是一样的。
语法中的expression是一个关于参数的表达式,表达式中出现的参数需要在argument_list中有定义,并且表达式只能是单行的。

lambad函数的用法上面也讲到了匿名函数的优点,那它到底有哪些用处呢?
(1)直接赋给一个变量,然后再像一般函数那样调用

multi=lambda x,y,z:x*y*z
multi(3,6,15)
实例输出结果
270

当然,也可以在函数后面直接传递实参

(lambda x:x**2)(6)
实例输出结果:
36

(2)将lambda函数作为参数传递给其他函数比如说结合map、filter、sorted等一些Python内置函数使用,下面举例说明。

squares=map(lambda x:x**2,range(10))
print(list(squares))
实例输出结果:
[0,1,4,9,16,25,36 49,64 81]
list(filter(lambda x:x%4==0,[2,4,6,8,10,12]))
实例输出结果:
[4,8,12]

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zaji/5670775.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-12-16
下一篇 2022-12-16

发表评论

登录后才能评论

评论列表(0条)

保存