filter(lambda n : n>5,range(10)
filter,迭代器,把符合要求的值列出来(此处要求为n>5)
map(lambda n : n*n,range(10)
map,把对参数的操作就过列出来(此处操作为n*n)
functools.reduce(lambda x ,y : x*y,range(1,10))
reduce把一个函数作用在一个序列[x1, x2, x3...]上,这个函数必须接收两个参数,reduce把结果继续和序列的下一个元素做累积计算,其效果就是:
reduce(f, [x1, x2, x3, x4]) = f(f(f(x1, x2), x3), x4)
比方说对一个序列求和,就可以用reduce实现:
>>> def add(x, y):
... return x + y
...
>>> reduce(add, [1, 3, 5, 7, 9])
25