Ich bin mit der Eigenschaft in Python herumspielen und ich frage mich, wie diese @ propertyName.deleter Dekorator funktioniert. Vermutlich vermisse ich etwas, ich konnte keine klaren Antworten von Google finden.Delete Decorator mit der Eigenschaft in Python
Was ich erreichen möchte ist, wenn diese Verhalten Verhalten aufgerufen wird, kann ich andere Aktionen auslösen (z. B. mit meiner 3D-Anwendung SDK).
Für jetzt scheint nur ein einfacher print() nicht ausgelöst werden.
Ist deleter ausgelöst, wenn ich die Eigenschaft löschen mit del (instance.property)?
Ansonsten, wie kann ich das erreichen?
class M():
def __init__(self):
self._m = None
@property
def mmm(self):
return self._m
@mmm.setter
def mmm(self, val):
self._m = val
@mmm.deleter
def mmm(self):
print('deleting') # Not printing
del(self._m)
if __name__ == '__main__':
i = M()
i.mmm = 150
print(i.mmm)
del(i.mmm)
print(i.mmm)
Vielen Dank (:
In der Tat kein klarer Fehler, danke für die schnelle Antwort. – Xavier