¿Existe una manera simple y rápida de usar sum() con valores no enteros?suma de python() y valores no enteros
Así que puedo utilizar de esta manera:
class Foo(object):
def __init__(self,bar)
self.bar=bar
mylist=[Foo(3),Foo(34),Foo(63),200]
result=sum(mylist) # result should be 300
He intentado anular __add__
__int__
y etc, pero no lo he encontrado todavía una solución
EDIT:
El la solución es implementar:
def __radd__(self, other):
return other + self.bar
como Will sugirió en su publicación. Pero como siempre, todos los caminos conducen a Roma, pero creo que esta es la mejor solución, ya que no necesito en mi clase __add__
Creo que la implementación de __radd__ es la mejor solución, ya que no necesita map(), reduce() ni importa módulos adicionales. – sloth