Назад к вопросам
Aston
Junior — Middle
68
Что такое встроенный механизм property() в Python и для чего он используется?
Компании, где спрашивали
Ответ от нейросети
sobes.tech AI
Встроенный механизм property() в Python позволяет создавать управляемые атрибуты класса, которые выглядят как обычные поля, но при доступе к ним вызываются специальные методы (геттеры, сеттеры, делитеры).
Это удобно для контроля доступа к данным, валидации или вычисления значений при чтении/записи.
Пример:
class Person:
def __init__(self, name):
self._name = name
@property
def name(self):
return self._name
@name.setter
def name(self, value):
if not value:
raise ValueError('Имя не может быть пустым')
self._name = value
p = Person('Иван')
print(p.name) # вызовет геттер
p.name = 'Пётр' # вызовет сеттер
Здесь name — это свойство, которое управляет доступом к приватному атрибуту _name.