Меня интересует, как использовать @property
в Python. Я читал документацию по python, и пример там, на мой взгляд, просто игрушечный код:
class C(object): def __init__(self): self._x = None @ свойство def x(self): """Я"м свойство "x"."" return self._x @x.setter def x(self, value): self._x = value @x.deleter def x( self): del self._x
Я не знаю, какие выгоды я могу получить, обернув _x
заполненным декоратором свойства. Почему бы просто не реализовать как:
class C(object): def __init__(self): self.x = None
Думаю, функция свойств может оказаться полезным в некоторых ситуациях. Но когда? Может ли кто-нибудь привести мне несколько реальных примеров?
Спасибо.