- lambda
- lambda是一个函数类型的表达式!
- lambda [arg1 [,arg2,…argn]]:expression
>>> returnSum = lambda *item : sum(list(item))
>>> returnSum(1,2,3,4,5,6,7,8,9,10)
55
>>> type(returnSum)
<class 'function'>
>>> mergeChar = lambda *item : ''.join(item)
>>> mergeChar('a', 'b', 'c')
'abc'
- reduce
菜鸟教程 Python reduce() 函数
- 对序列进行某种规则的迭代运算
- reduce(function, iterable[, initializer])
- from functools import reduce
- 返回数值
>>> from functools import reduce
>>> def multi(a, b):
return a*b
>>> reduce(multi, [1,2,3,4])
24
- map
菜鸟教程 Python map() 函数
- 对于迭代对象中每个数字单独进行函数处理
- map(function, iterable, …)
- Python 2.x 返回列表。
- Python 3.x 返回迭代器。
- 返回一些关于序列其它有意义的信息。
下属代码反映了:字符串为迭代类型以及访问迭代类型的方法。
>>> for i in map(lambda s: 100 if s.find('s') != -1 else -100, 'qwersg'):
print(i)
-100
-100
-100
-100
100
-100
- filter
菜鸟教程 Python filter() 函数
- 过滤本迭代对象
- filter(function, iterable)
- Pyhton2.7 返回列表
- Python3.x 返回迭代器对象
>>> def is_odd(n):
return n % 2 == 1
>>> for i in (filter(is_odd, [1,2,3,4,5,6,7,8,9,10])):
print(i)
1
3
5
7
9