23 lines
638 B
Python
23 lines
638 B
Python
class Vault:
|
|
def __init__(self):
|
|
self._treasure = 'gold'
|
|
self._original_attrs = self.__dict__.copy()
|
|
|
|
@property
|
|
def treasure(self):
|
|
if self.__dict__ != self._original_attrs:
|
|
print('Attribute deleted!')
|
|
return self._treasure
|
|
def stuff(self):
|
|
...
|
|
|
|
def __setattr__(self, key, value):
|
|
self.__dict__[key] = value
|
|
if key != '_original_attrs' and hasattr(self, '_original_attrs') and self.__dict__ != self._original_attrs:
|
|
print('Attribute deleted!')
|
|
|
|
def __call__(self, *args):
|
|
print(f"attempt to call {args}")
|
|
|
|
v = Vault()
|
|
v(1,2,3) |