Python总览

示例

# 无需导入


# 无需导入...
from functools import reduce # ...但是可以从functools模块加载


from functools import reduce # 强制性的

reduce通过在an的下一个元素上重复应用一个函数来减少迭代次数,iterable以及到目前为止的累积结果。

def add(s1, s2):
    return s1 + s2

asequence = [1, 2, 3]

reduce(add, asequence)  # 等效于:add(add(1,2),3)
# 出:6

在此示例中,我们定义了自己的add函数。但是,Python在operator模块中带有标准的等效功能:

import operator
reduce(operator.add, asequence)
# 出:6

reduce 也可以传递一个起始值:

reduce(add, asequence, 10)
# 出:16