比方说我有一个叫做Number的课
class Number():
def __init__(self,n):
self.n=n
self.changed=None
a = Number(8)
print(a.n) #prints 8
a.n=9
print(a.n) #prints 9
当n
类属性更改时,我希望将changed
类属性更改为True
。
答案 0 :(得分:1)
可以正确使用@propety
class Number():
def __init__(self,n):
self._n=n
self._changed=None
@property
def n(self):
return self._n
@property
def changed(self):
return self._changed
@n.setter
def n(self, val):
# while setting the value of n, change the 'changed' value as well
self._n = val
self._changed = True
a = Number(8)
print(a.n) #prints 8
a.n=9
print(a.n) #prints 9
print(a.changed)
返回:
8
9
True