1. 匿名函数的定义
在Python语言中除了def语句用来定义函数之外,还可以使用匿名函数lambda,它是Python一种生成函数对象的表达式形式。
匿名函数通常是创建了可以被调用的函数,它返回了函数,而并没有将这个函数命名。
普通函数需要去依靠函数名去调用,而匿名函数没有,所以需要把这个函数对象复制给某个变量进行调用
lambda有时被叫做匿名函数也就是这个原因,需要一个函数,又不想动脑筋去想名字,这就是匿名函数。
2. 匿名函数的作用
不用命名 直接实现简单功能 但是如果只是单个调用的话 还是要命名变量
让代码更加简洁
3. 匿名函数的格式与示例
匿名函数的关键字为lambda,冒号前面是形参,冒号后面是返回值
3.1 示例:返回1~100的和
from functools import reduce
print(reduce(lambda x,y:x+y,range(100)))
3.2 示例:返回1~10的平方
def mypow(x):
return x**2
print(list(map(mypow,range(1,11))))
print(list(map(lambda x:x**2,range(1,11))))
3.3 示例:返回1~100之间的偶数
print(list(filter(lambda x:x%2==0,range(1,101))))
3.4 示例:将给定列表中的0放在列表的最后
nums=[0,7,0,1,2,5,0,1,3,4,0,5,0,7]
print(sorted(nums,key=lambda x:1 if x==0 else 0))