Detecting Class Attribute Value Change And Then Changing Another Class Attribute
Let's say I have a class called 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 Wh
Solution 1:
Possible with proper use of @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)
Returns:
8
9
True
Post a Comment for "Detecting Class Attribute Value Change And Then Changing Another Class Attribute"