1 #Python提供的sum()函数可以接受一个list并求和,请编写一个prod()函数,可以接受一个list并利用reduce()求积:
代码:
2 3 from functools import reduce4 li = [1,2,3,4,5,7]5 print(sum(li))6 7 def prod(x,y): 8 return x * y9 10 r = reduce(prod,li)11 print(r)
运行结果:
[root@HK Practice]# python map_reduce_2.py
22
840
[root@HK Practice]#
代码解释:
2 3 from functools import reduce #导入reduce模块4 li = [1,2,3,4,5,7] #创建一个列表用于计算5 print(sum(li)) #打印求和结果6 7 def prod(x,y): #定义函数prod,传入两个参数x,y8 return x * y #返回x和y的乘积9 10 r = reduce(prod,li) #reduce 传入函数prod和列表li11 print(r) #打印结果
转载于:https://blog.51cto.com/netsyscode/1751356