Kann eine @property
-Funktion in einer Variablen gespeichert werden?@property-Funktionen speichern
Stellen wir den folgenden Code haben:
class I:
def __init__(self):
self.i = 0
def get_i(self):
return self.i
a = I()
f_i = a.get_i
print(f_i())
a.i = 3
print(f_i())
ich die Funktion get_i innerhalb einer Variablen speichern und verwenden. Der Ausgang wird wie erwartet:
0
3
Schauen Sie jetzt auf dem gleichen Code kann, aber dieses Mal mit einer @property
Funktion:
class I:
def __init__(self):
self.i = 0
@property
def get_i(self):
return self.i
a = I()
f_i = a.get_i
Jetzt a.get_i
ist nicht die Funktion mehr (Es ist der Wert 0) . Gibt es eine Möglichkeit, die Funktion weiterhin in der Variablen f_i zu speichern?
'I.get_i.fget .__ get __ (a)' ist das, was ich suchte. Vielen Dank! – BlueSun