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

Traceback (most recent call last): File "1.py", line 3, in <module> print(reduce(f,[1,2,3,4,5])) NameError: name 'reduce' is not defined

def f(x,y):

   return f(x)+f(y)

print(reduce(f,[1,2,3,4,5]))



正在回答

3 回答

from functools import reduce 

def prod(x, y):

    return x * y

print (reduce(prod, [2, 4, 5, 7, 12]))

python3版本,reduce在functools模块里,要引用它

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

建议你看下错误信息,然后根据里面的关键字在docs.python.org里面查找,你问题里的关键字是reduce,所以你要去看看reduce的用法以及相关的文档,这些我也是看文档才知道的。

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

reduce 要从 functools引用进来,还有“ return f(x)+f(y)” 这给是要实现什么?x+y么?

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

举报

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

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

进入课程

Traceback (most recent call last): File "1.py", line 3, in <module> print(reduce(f,[1,2,3,4,5])) NameError: name 'reduce' is not defined

我要回答 关注问题
微信客服

购课补贴
联系客服咨询优惠详情

帮助反馈 APP下载

慕课网APP
您的移动学习伙伴

公众号

扫描二维码
关注慕课网微信公众号