Ich weiß um die __add__
Methode plus, außer Kraft zu setzen, aber wenn ich das verwenden + = außer Kraft zu setzen, habe ich am Ende mit einem von zwei Problemen auf:Gibt es eine Möglichkeit, + = in Python zu überladen?
(1), wenn __add__
selbst mutiert, dann
z = x + y
mutiert x, wenn ich nicht möchte, dass x dort mutiert wird.
(2), wenn __add__
gibt ein neues Objekt, dann
tmp = z
z += x
z += y
tmp += w
return z
wird, ohne etwas zurückgeben w da z und tmp Punkt auf verschiedene Objekte nach z += x
ausgeführt wird.
Ich kann eine Art von .append()
Methode machen, aber ich würde lieber +=
überlasten, wenn es möglich ist.
Die Programmierer, die RTFM sind eine vom Aussterben bedrohte Art. – tzot
@tzot in gewisser Weise, Sie betrachten die F'ing M. ;-) –
Meinen Sie, dass Josh einer von Pythons manuellen Schreibern ist? Sorry, ich verstehe nicht, was du meinst, @ BobStein-VisiBone. – tzot