Python编程:NameError: name 'reduce' is not defined

版权声明:本文为博主原创文章,欢迎转载,请注明出处 https://blog.csdn.net/mouday/article/details/78910056

问题来了

使用 reduce() 测试的时候报错:reduce 未定义!

print(reduce(lambda x, y: x + y, [ 1, 2, 3]))

"""Output:
NameError: name 'reduce' is not defined
"""

解决

引用stackoverflow的回答:
- 你使用的是python3
- 参考的是python2的指南

from functools import reduce  # py3

print(reduce(lambda x, y: x + y, [ 1, 2, 3]))

"""Output:
6
"""

reduce函数在python3的内建函数移除了,放入了functools模块

参考: NameError: global name ‘reduce’ is not defined
连接: https://stackoverflow.com/questions/10226381/nameerror-global-name-reduce-is-not-defined

阅读更多

扫码向博主提问

彭世瑜

非学,无以致疑;非问,无以广识
  • 擅长领域:
  • python
  • python爬虫
  • python全栈
去开通我的Chat快问

没有更多推荐了,返回首页