Znam sposobu __add__
zastąpić także, ale gdy użyć, aby zastąpić + =, to kończy się w jednym z dwóch problemów:Czy istnieje sposób na przeciążenie + = w python?
(1), jeśli __add__
mutuje siebie, a następnie
z = x + y
zmutuje x, gdy nie chcę, aby x było tam mutowane.
(2) jeśli __add__
zwraca nowy obiekt, a następnie
tmp = z
z += x
z += y
tmp += w
return z
powróci coś bez wag ponieważ oo i tmp punktu do różnych obiektów po z += x
jest wykonywany.
Potrafię zrobić pewien rodzaj metody .append()
, ale wolałbym przeciążać +=
, jeśli to możliwe.
Programistów, którzy RTFM są zagrożonym gatunkiem. – tzot
@ W pewnym sensie patrzysz na F'ing M. ;-) –
Czy sugerujesz, że Josh jest jednym z pisarzy ręcznych Pythona? Niestety, nie rozumiem, co masz na myśli, @ BobStein-VisiBone. – tzot