TGViewer
About Python [ru] About Python [ru] @python_tesst · 6.44K subscribers
Post #2648 701
⚙️ Как работает декоратор @property в Python и зачем он нужен?

Декоратор @property в Python превращает метод класса в атрибут, позволяя работать с ним, как с обычным свойством. Это упрощает доступ к приватным данным и добавляет контроль за их валидацией и изменением.

С помощью @property можно создавать интерфейс для работы с данными объекта, защищая их от некорректных значений и обеспечивая читаемость кода.

➡️ В этом примере декоратор @property используется для создания свойства age, которое проверяет корректность введенного значения:

class Person:
def __init__(self, age):
self._age = age

@property
def age(self):
return self._age

@age.setter
def age(self, value):
if value < 0:
raise ValueError("Возраст не может быть отрицательным.")
self._age = value

p = Person(30)
p.age = 35 # Работает нормально
print(p.age) # 35
p.age = -5 # ValueError: Возраст не может быть отрицательным.


🗣 Использование @property полезно для создания аккуратного интерфейса доступа к данным с их защитой и валидацией, соблюдая при этом принципы инкапсуляции.


🖥 Подробнее тут
More from @python_tesst
  1. Sep 29, 2026Claude Sonnet 5.5 — уже не слив, релиз официально состоялся Прайс не трогали: $2 за миллио…
  2. Sep 29, 2026Post #3194
  3. Sep 29, 2026Дженсен Хуанг выкатил NVIDIA Open Agent Safety Platform — и притащил с собой 100+ партнеро…
  4. Sep 29, 2026Стикмену теперь под силу снести любой сайт. Чувак под это навайбкодил целую игруху: грузиш…
  5. Sep 27, 2026OpenAI метит в подписку за 500 баксов Что там в описании тарифа? Пока что от ChatGPT Pro о…
  6. Sep 27, 2026Свежая обложка The Economist подъехала Журналисты: да мы вообще не сгущаем краски Те же жу…
Threads Profile ViewerView any public Threads profile without an account.Open ThreadLook →Writing with AI? Make it sound human.Metric37 rewrites AI drafts so they read naturally. Free AI detector, 1,500 words free.Try Metric37 →