1 #Python提供的sum()函数可以接受一个list并求和,请编写一个prod()函数,可以接受一个list并利用reduce()求积:
代码:
2
3 from functools import reduce
4 li = [1,2,3,4,5,7]
5 print(sum(li))
6
7 def prod(x,y):
8 return x * y
9
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,y
8 return x * y #返回x和y的乘积
9
10 r = reduce(prod,li) #reduce 传入函数prod和列表li
11 print(r) #打印结果