Estou usando o Python 3.2. Tentei isso:
xor = lambda x,y: (x+y)%2
l = reduce(xor, [1,2,3,4])
E obteve o seguinte erro:
l = reduce(xor, [1,2,3,4])
NameError: name 'reduce' is not defined
Tentei imprimir reduce
no console interativo - obtive este erro:
NameError: name 'reduce' is not defined
É reduce
realmente removido no Python 3.2? Se for esse o caso, qual é a alternativa?
python
reduce
python-3.2
Sergey
fonte
fonte
Respostas:
Foi movido para
functools
.fonte
sum(item['key'] for item in list_of_dicts)
.Você pode adicionar
antes de usar o reduzir.
fonte
Ou se você usar a biblioteca de seis
fonte
Nesse caso, acredito que o seguinte seja equivalente:
O único problema com isso é que ele cria grandes números, mas talvez isso seja melhor do que operações repetidas no módulo?
fonte