python3提示“NameError: name 'reduce' is not defined”

前提是你 提交于 2019-12-06 18:26:41

代码如下:

def calc_prod(lst):
    def lazy_prod():
        def f(x, y):
            return x * y
        return reduce(f, lst, 1)
    return lazy_prod

f = calc_prod([1, 2, 3, 4])
print (f())

运行提示


解决办法:

python3中reduce函数被取消了,放入到了functools模块中,所以在语句前加上一条:

from functools import reduce

运行结果:


标签
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!