| f | class ParDescr: | f | class ParDescr: |
| | | |
| n | def __init__(self, initial_value): | n | def __init__(self, init): |
| self.initial_value = initial_value | | self.init = init |
| self.name = None | | self.name = None |
| | | |
| def __set_name__(self, owner, name): | | def __set_name__(self, owner, name): |
| self.name = name | | self.name = name |
| | | |
| n | def __get__(self, instance, owner=None): | n | def __get__(self, instance, owner): |
| if instance is None: | | if instance is None: |
| t | return self.initial_value | t | return self.init |
| return instance.__dict__.get(self.name, self.initial_value) | | return instance.__dict__.get(self.name, self.init) |
| | | |
| def __set__(self, instance, value): | | def __set__(self, instance, value): |
| instance.__dict__[self.name] = value | | instance.__dict__[self.name] = value |
| | | |
| def __delete__(self, instance): | | def __delete__(self, instance): |
| instance.__dict__.pop(self.name) | | instance.__dict__.pop(self.name) |