lambda表达式(匿名函数)
“Lambda 表达式”(lambda expression)是一个匿名函数,Lambda表达式基于数学中的λ演算得名,直接对应于其中的lambda抽象(lambda abstraction),是一个匿名函数,即没有函数名的函数
lambda在python中的应用
lambda冒号前的为输入的参数x,冒号后为输出的值y。
即lambda x:y
平时我们定义函数都会使用def来定义,那么当你想使用一个函数只是临时使用它一下,就没有必要给它起一个名字,因此lambda表达式派上了用处,下面举几个例子来展示一下具体的应用场景。
1.sort排序
alist = [{'name':'a','age':20},{'name':'b','age':30},{'name':'v','age':25},]
alist.sort(key=lambda x: x['age'])
2.filter(function,list)筛选函数
Filter = filter(lambda x: x > 3 , [1, 2, 3, 4, 5])
print(list(Filter))
3.map(function, list)根据提供的函数对指定序列做映射
Map = map(lambda x: x ** 2,[1,2,3,4])
print(list(Map))
4.从一个函数中返回
def add():
return lambda x : x + 1
r = add()
print(r(4))
输出结果为5,常用来实现函数装饰器(Wrapper)