简介
什么是lambda表达式呢? 简单的说就是一个没有 “return” 语句的函数,或者叫”匿名函数”,看一个简单的lambda表达式例子
lambda x : x + 5
定义
lambda表达式有3个部分,第一部分就是”lambda”关键字的,标明这是一个lambda表达式,然后紧接着第二部分”变量”, 然后”:”后面接着第三部分”返回值”上面的表达式接收值x,然后返回x+5的值,相当于函数
def(n):
return n + 5
看看有多个参数的lambda表达式(返回三个数的和):
lambda x, y, z : x + y + z
那么lambda表达式和函数有什么区别呢, 直观的函数肯定要写更多的代码,而lambda仅仅是一行表达式, 假如我们仅仅是临时一次使用一个简单函数(通常只有1-3行规模的),这个函数再也没有其他的用途, 那么选择单独定义一个函数显然是不聪明的,因为要更多的代码,额外的命名. 因此lambda就能很愉快的解决这个问题.
还有一个特点就是lambda表示式是可以赋值的,并可以在函数中构造并返回, 看如下例子
g = lambda x : x + 5
这里’g’就相当于是lambda表达式”lambda x : x + 5”, 然后像函数一样使用即可: