Python 匿名函数
函数也是一个对象,也可以赋值个变量,在函数调用时也可以把函数作为参数来传递,传入函数时,可以不去显式的定义函数,直接传入匿名函数
print map(lambda x:x*x,[1,2,3,4,5]) #[1, 4, 9, 16, 25]
匿名函数lambda x:x*x 相当于:
def f(x): return x*x
关键字lambda表示匿名函数,冒号前面的x表示函数参数,匿名函数有个限制,就是只能有一个表达式,不用写return,返回值就是该表达式的结果
f=lambda x:x*x print f #<function <lambda> at 0x02528DB0>
把匿名函数作为返回值返回:
def build(x,y): return lambda:x*x+y*y