lambda
python中,lambda函数也叫匿名函数,及即没有具体名称的函数,
它允许快速定义单行函数,类似于C语言的宏,可以用在任何需要函
数的地方。这区别于def定义的函数。
1 | lambda x : x*x |
- lambda在运行一些小型的简单的函数时比较适用
map
map会把可迭代对象的每个元素e拿出来function(e),并存入结果作为返回
- 公式
1
map(function, iterable)
- 使用
1
2print(list(map(lambda x:x*x, [1, 2, 3, 4, 5])))
[1, 4, 9, 16, 25]
reduce
reduce函数将一个可迭代的对象转变成一个元素。最终获得一个数字
- 公式
1
reduce(function, iterable)
- 使用
1
2
3from functiontools import reduce
print(reduce(lambda x, y : x * y, [1, 2, 3, 4, 5]))
120
filter
filter函数传入一个迭代对象作为参数并将
这个迭代对象当中所有那些你不要的东西滤去。
公式
1
reduce(function, iterable)
使用
1
2
3
4print(list(filter(lambda x:x%2==0, [1, 2, 3, 4, 5])))
[2, 4]
print(list(filter(lambda x:x<0, [1, 2, 3, 4, 5, -1, -5]))
[-1, -5]