Estoy usando Python 3.2. Probé esto:
xor = lambda x,y: (x+y)%2
l = reduce(xor, [1,2,3,4])
Y obtuvo el siguiente error:
l = reduce(xor, [1,2,3,4])
NameError: name 'reduce' is not defined
Intenté imprimir reduce
en la consola interactiva. Recibí este error:
NameError: name 'reduce' is not defined
¿ reduce
Realmente se elimina en Python 3.2? Si ese es el caso, ¿cuál es la alternativa?
python
reduce
python-3.2
Sergey
fuente
fuente
Respuestas:
Fue trasladado a
functools
.fuente
sum(item['key'] for item in list_of_dicts)
.Puedes añadir
antes de usar el reductor.
fuente
O si usas las seis bibliotecas
fuente
En este caso, creo que lo siguiente es equivalente:
El único problema con esto es que crea grandes números, pero ¿tal vez eso es mejor que las operaciones de módulo repetidas?
fuente