what is wrong with this property setter
Nagy László Zsolt
gandalf at shopzeus.com
Thu Jun 9 03:28:34 EDT 2016
class Test:
def __init__(self):
self._parent = None
@property
def parent(self):
return self._parent
@parent.setter
def set_parent(self, new_parent):
self._parent = new_parent
p, c = Test(), Test()
c.parent = p
>py -3 test.py
Traceback (most recent call last):
File "test.py", line 15, in <module>
c.parent = p
AttributeError: can't set attribute
BTW this does work, but it is not that elegant:
class Test:
def __init__(self):
self._parent = None
def get_parent(self):
return self._parent
def set_parent(self, new_parent):
self._parent = new_parent
parent = property(get_parent, set_parent)
p, c = Test(), Test()
c.parent = p
More information about the Python-list
mailing list