python工具函数reduce的使用


reduce函数

  • 工具函数reduce在functools模块中,所以需要先导入:from functools import reduce

  • reduce(function, sequence[, initial]) -> value

  • reduce函数会对参数序列中元素进行累加,如果给定了初始值initial,会以initial为第一个元素,依次加上序列中的每个元素,否则序列中的元素从头开始进行累加

  • 示例

    In [1]: from functools import reduce
    
    In [2]: reduce(lambda x,y:x+y,range(100)) #计算0-99的和,未给定初始值
    Out[2]: 4950
    
    In [3]: reduce(lambda x,y:x+y,range(100),100) #给定初始值100
    Out[3]: 5050
    
    In [4]: reduce(lambda x,y:x+y,'111111','initial') #给定了初始值,结果即'initial'+'111111'
    Out[4]: 'initial111111'