python中reduce函数

来源:互联网 发布:阿里数据库在哪里 编辑:程序博客网 时间:2024/05/22 05:45

Python中reduce函数,帮助文档:

>>> from functools import reduce>>> help(reduce)Help on built-in function reduce in module _functools:reduce(...)    reduce(function, sequence[, initial]) -> value    Apply a function of two arguments cumulatively to the items of a sequence,    from left to right, so as to reduce the sequence to a single value.    For example, reduce(lambda x, y: x+y, [1, 2, 3, 4, 5]) calculates    ((((1+2)+3)+4)+5).  If initial is present, it is placed before the items    of the sequence in the calculation, and serves as a default when the    sequence is empty.

可以看出,reduce把一个函数作用在一个序列[x1, x2, x3, …]上,这个函数必须接收两个参数,reduce把结果继续和序列的下一个元素做累积计算,举例说明:

def add (x, y):    return x+yl = [1,2,3,4,5]total = reduce (add, l)print(total)