我使用的是Python 3.2。我试过了:
xor = lambda x,y: (x+y)%2
l = reduce(xor, [1,2,3,4])
并得到以下错误:
l = reduce(xor, [1,2,3,4])
NameError: name 'reduce' is not defined
已尝试将reduce
打印到交互式控制台-出现此错误:
NameError: name 'reduce' is not defined
在Python3.2中reduce
真的被删除了吗?如果是这样的话,还有什么选择呢?
发布于 2012-01-01 00:27:39
它被移到了functools
。
发布于 2015-04-01 16:59:52
您可以添加
from functools import reduce
在使用reduce之前。
发布于 2015-11-11 04:15:51
或者如果您使用的是six库
from six.moves import reduce
https://stackoverflow.com/questions/8689184
复制相似问题