匿名函数就是没有名字的函数。
Python中使用一个关键字lambda来创建一个匿名函数,这时创建的就是一个没有名字的函数对象。
>>> lambda x:x*x
<function <lambda> at 0x1056b49d8>
你可以使用在创建匿名函数的时候给它一个变量名:
>>> f = lambda x:x*x
>>> f(2)
4
解释一下:冒号前面的是函数参数,冒号后面的是函数内部的表达式,不用写return,冒号后面的表达式会直接返回。上面的就相当于:
def f(x):
return x * x;
lambda函数还可以接受多个参数:
>>> add = lambda a,b:a+b
>>> add(2,3)
5
lambda函数简洁,但缺点就是它的表达式只能有一个,你不能在冒号后面写多个表达式。
网友评论