Что такое функция property() в Python

Python Middle Aston
Что такое функция property() в Python
Ответы
Функция `property()` в Python создаёт дескриптор для управления доступом к атрибуту класса. Она позволяет добавлять getter, setter и deleter методы к атрибуту, сохраняя синтаксис обычного обращения к атрибуту. Пример: ``` class Circle: def __init__(self, radius): self._radius = radius @property def radius(self): print("Getting radius") return self._radius @radius.setter def radius(self, value): if value < 0: raise ValueError("Radius cannot be negative") print("Setting radius") self._radius = value c = Circle(5) print(c.radius) # вызовет getter c.radius = 10 # вызовет setter ``` Ключевые моменты: - Позволяет добавлять валидацию при установке значения - Позволяет вычислять значения на лету при чтении - Сохраняет инкапсуляцию, скрывая реальное имя атрибута - Позволяет изменять внутреннюю реализацию без изменения интерфейса класса