如果省略第三个参数,那么from中的 第一个 值
tup将用作初始化程序。
或者,换句话说,将
reduce()可选的3rd参数放在第二个参数的值之前(如果存在)。
而且,这意味着如果第二个参数是一个 空 序列,则第三个参数将用作默认值,就像只有 一个
元素(没有显式的初始化器参数)的第二个参数一样,它将是默认的返回值。
该
functools.reduce()文档包括该功能的Python版本:
def reduce(function, iterable, initializer=None): it = iter(iterable) if initializer is None: value = next(it) else: value = initializer for element in it: value = function(value, element) return value
请注意
initializer,当不
None使用时,如何将用作第一个值,而不是中的第一个值
iterable。



