reduce() 函数
对参数序列中元素进行累积。
函数将一个list或tuple的所有数据进行操作:先对数据中的第 1、2 个元素进行操作,得到的结果再与第三个元素运算,得到一个结果。一般和lambda函数搭配使用
示例:
>>> from functools import reduce#py3需要引入该模块
>>> reduce(lambda x,y:x+y,[1,2,3,4])10
以上示例的说明:
第一次计算:x=1,y=2
第二次计算:x=3,y =3第三次计算:x=6,y=46+4=10
练习题:使用匿名函数求100以内偶数的和
筛选下元素列表:
>>> s=[]>>> for i in range(0,100,2):... s.append(i)...>>> print(s)[0, 2, 4, 6, 8, 10, 12, 14, 16, 18, 20, 22, 24, 26, 28, 30, 32, 34, 36, 38, 40, 42, 44, 46, 48, 50, 52, 54, 56, 58, 60, 62, 64, 66, 68, 70, 72, 74, 76, 78, 80, 82, 84, 86, 88, 90, 92, 94, 96, 98]>>>
reduce实现运算结果:
>>> from functools import reduce>>> result = reduce(lambda x,y:x+y,s)>>> print(result)2450>>>