Esiste un modo semplice e rapido per utilizzare sum() con valori non interi?python's sum() e valori non interi
Così posso usare in questo modo:
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
Ho provato l'override __add__
e __int__
ecc, ma io non ho trovato una soluzione ancora
EDIT:
Il soluzione è da implementare:
def __radd__(self, other):
return other + self.bar
come suggerito nel suo post. Ma, come sempre, tutte le strade portano a Roma, ma credo che questa sia la soluzione migliore in quanto non ho bisogno __add__
nella mia classe
Penso che implementare __radd__ sia la soluzione migliore, dal momento che non necessita di map(), reduce() o importa moduli aggiuntivi. – sloth