python lamba表达式

参考:http://blog.csdn.net/imzoer/article/details/8667176

            http://www.cnblogs.com/coderzh/archive/2010/04/30/python-cookbook-lambda.html


##################################################################33


lambda函数也叫匿名函数,即,函数没有具体的名称。


g=lambda x:x**2
#等价于
def f(x):
     return x**2

python lamba表达式_第1张图片


lambda语句中,冒号前是参数,可以有多个,用逗号隔开,冒号右边是返回值。lambda语句构建的其实是一个函数对象

l=lambda x,y:x+y



lambda的主体是一个表达式,而不是一个代码块。仅仅能在lambda表达式中封装有限的逻辑进去

lambda表达式是起到一个函数速写的作用


lambda表达式也可以用在def函数中

def action(x):
     return lambda y:x+y

a=action(2)
a(22)

python lamba表达式_第2张图片


这里定义了一个action函数,返回了一个lambda表达式。其中lambda表达式获取到了上层def作用域的变量名x的值


上面函数也可写出lambda形式:

b=lambda x:lambda y:x+y
a=b(3)
a(2)



你可能感兴趣的:(python)