描述符基础
class Descriptor: def __get__(self, instance, owner): return instance._value def __set__(self, instance, value): if value < 0: raise ValueError("值不能为负") instance._value = value class MyClass: attr = Descriptor()
property 实现
class Temperature: def __init__(self): self._celsius = 0 @property def celsius(self): return self._celsius @celsius.setter def celsius(self, value): self._celsius = value
转载请注明:周志洋的博客 » Python进阶-描述符协议