Nicht sicher, wie man es richtig ausdrückt, aber hier ist der Deal. Ich habe ein Skript, in dem jede Variable global definiert ist, aber später möchte ich das Skript in eine Klasse für eine bessere Kapselung konvertieren.Umbenennen von Klassenvariablen in Python ohne das Selbst
Alle Variablen, die ich im Skript verwendete, müssen jedoch in Objektvariablen konvertiert werden. Ich habe so etwas wie
x = 5
in
self.x = 5
Und nach tun, dass alle Funktionen im Skript gedreht werden muss, in Methoden der Klasse geändert würde, jedoch sind die meisten Methoden mathematische Formeln und
z = x ** y + x
in
etwas so sauber wie Refactoringwirklich tut weh Lesbarkeit.
So als Lösung für diese Ich habe diese wirklich peinlich Umbenennung zu Beginn der Methoden eingeben:
def method(self, ...):
x = self.x
y = self.y
...
Es macht die Formeln lesbar, aber die Eingabe all das Umbenennung ist wirklich schmerzhaft Gibt es einen eleganteren Weg dies zu tun?