Lambda是什么呢?
先不做任何赘述,看个例子再说:
num=lambda x:x+1print(num(1))print(num(2))print(num(3))print(num(4))
???定义一个函数:
def num_(a): ???a=a+1 ???return a
???通过上面lambda与def函数比较可得,lambda是简化了函数定义的书写形式。是代码更为简洁,但是使用函数的定义方式更为直观,易理解。
?lambda函数详细用法:
python 使用 lambda 来创建匿名函数。
??lambda只是一个表达式,函数体比def简单很多。 ?lambda的主体是一个表达式,而不是一个代码块。仅仅能在lambda表达式中封装有限的逻辑进去。 ?lambda函数拥有自己的命名空间,且不能访问自有参数列表之外或全局命名空间里的参数。 ??lambda函数的语法只包含一个语句:
lambda 参数列列表 : 表达式 lambda [list] : 表达式(value)
?定义 lambda 表达式,必须使用 lambda 关键字;[list] 作为可选参数,等同于定义函数是指定的参数列表;value 为该表达式的名称。
示例
lambda表达式:
sum = lambda arg1, arg2: arg1 + arg2
???def定义函数:
def sum_(arg1,arg2): ???total=arg1+arg2 ???return total
???得到的结果是一样的,如此简单!!!
总结:lambda存在意义就是对简单函数的简洁表示