为了账号安全,请及时绑定邮箱和手机立即绑定

求解释以下代码

def calc_prod(lst):
    def prod():
        return reduce(lambda x, y : x * y, lst)
    return prod


就是黑色部分?

正在回答

2 回答

lambda 表明是匿名函数,lambda x,y: x*y 这段代码就相当于

def f(x,y):
    return x*y

只不过省略了 f 这个函数名,所以叫匿名函数

1 回复 有任何疑惑可以回复我~
#1

慕粉3754966 提问者

非常感谢!后面会讲到
2016-08-12 回复 有任何疑惑可以回复我~
#2

波函数的魔方

请问reduce有什么用?
2016-08-17 回复 有任何疑惑可以回复我~
#3

岳阳白少 回复 波函数的魔方

reduce是可以自定义的函数。reduce本身意义是list元素相加,但是这里已经自定义了元素的乘积x*y,所以在这里是元素相乘
2016-10-08 回复 有任何疑惑可以回复我~
#4

岳阳白少 回复 波函数的魔方

说错了,reduce是要传递进去两个元素,然后自定义对他们进行操作
2016-10-08 回复 有任何疑惑可以回复我~
查看1条回复

就是先把 lst列表中的前两个相乘,相乘结果再与第3个相乘,再把结果与第4个相乘,直到列表结束。最后的结果就是列表中所有元素相乘。

0 回复 有任何疑惑可以回复我~
#1

慕粉3754966 提问者

lambda 是什么?
2016-08-11 回复 有任何疑惑可以回复我~

举报

0/150
提交
取消
python进阶
  • 参与学习       255665    人
  • 解答问题       2949    个

学习函数式、模块和面向对象编程,掌握Python高级程序设计

进入课程

求解释以下代码

我要回答 关注问题
意见反馈 帮助中心 APP下载
官方微信