那些Python方法---reduce()

python3中reduce被放到了functools模块,所以用之前需要导入

from functools import reduce

作用:reduce第一个参数是一个带两个入参的函数对象,第二个参数是序列,将序列的各个元素进行累积加工---具体看示例

适用:somewhere you want

示例:

>>> j = [5,6,7,8]

>>>from functools import reduce

>>> reduce((lambdax, y:x+y),j)

26

>>>deffunc1(x, y):

...returnx*y

...

>>> i = [1,2,3,4,5,6]

>>>

>>> reduce(func1, i)

720

求1到100的和

>>>deffunc1(x, y):

...returnx+y

...

>>> reduce(func1, range(1,101))

5050

注:

将序列的头两个元素 j[0]、j[1] 计算的值作为下一次计算值的第一个参数,在与序列第三个元素 j[2] 进行计算,以此类推

你可能感兴趣的:(那些Python方法---reduce())