一聚教程网:一个值得你收藏的教程网站

最新下载

热门教程

python基础教程之匿名函数lambda

时间:2017-01-24 编辑:简简单单 来源:一聚教程网

python lambda

当我们在使用函数时,有时候,并不需要显示的定义一个函数,我们可以使用匿名函数更加方便,在Python中对匿名函数也提供了支持。

比如当我们想计算两个数a,b之和时,即f(a,b) = a + b。我们可以有两种方法完成,第一种就是显示的定义一个函数f(x,y),然后将参数传进去得到结果。第二种方式就是使用匿名函数了。

 代码如下复制代码

f=lambdax,y:x+y

>>>f(1,2)

3

匿名函数lambda x,y:x+y实际上就是:

 代码如下复制代码

deff(x, y):

  returnx+y

在python中关键字lambda表示匿名函数,冒号前面的x,y表示的时函数的参数,匿名函数的语法就是:

 代码如下复制代码
lambda[arg1[,arg2,arg3....argN]]:expression

lambda语句中,冒号前是参数,可以有多个,用逗号隔开,冒号右边的表达式的结果作为匿名函数的返回值。

匿名函数有一个限制就是只能有一个表达式,不用写return,匿名函数的返回值就是该表达式的结果。用匿名函数有个好处,因为函数没有名字,不必担心函数名冲突。此外,匿名函数也是一个函数对象,也可以把匿名函数赋值给一个变量,再利用变量来调用该函数:

 代码如下复制代码

>>> f=lambdax: x*x

>>> f

at0x101c6ef28>

>>> f(5)

25

同时,也可以把匿名函数作为函数的返回值返回,比如:

 代码如下复制代码

defbuild(x, y):

  returnlambda: x+y 

热门栏目