20 lines
340 B
Python
Executable File
20 lines
340 B
Python
Executable File
#!/usr/bin/env python3
|
|
|
|
class Foo:
|
|
@property
|
|
def bar(self):
|
|
return self._bar
|
|
|
|
@bar.setter
|
|
def bar(self, value):
|
|
self._bar = value
|
|
|
|
def __setattr__(self, name, value):
|
|
print(f'setting {name!r} to {value!r}')
|
|
super().__setattr__(name, value)
|
|
|
|
o = Foo()
|
|
o.bar = 8
|
|
print(o.bar)
|
|
print(o._bar)
|