reduce
函数如何使用三个参数而不是两个参数在python3中工作。 因此,对于两个,使用三个参数减少函数
tup = (1,2,3)
reduce(lambda x, y: x+y, tup)
我得到这一个。这只是总结了tup
中的所有元素。但是,如果你给Reduce函数三个参数是这样下面,
tup = (1,2,3)
reduce(lambda x, y: x+y, tup, 6)
这将给你的12
值。 我检查了python3的文档,它说第三个参数是一个初始值设定项。那就是说,如果没有插入第三个参数,那么默认的初始化器是什么?
好,我似乎明白了! 'next'在这个函数中做了什么? – chanpkr
@ChanPark:查看['next()'函数文档](http://docs.python.org/3/library/functions.html#next);从迭代器中检索下一个值。如果'iterable'是一个元组,那么这是第一个索引。 –
请注意,实际的reduce函数确实接受'None'作为第三个参数。 – georg