Встречается на собеседованиях • сегодня
Что такое функция property() в Python
Функция property() в Python создаёт дескриптор для управления доступом к атрибуту класса. Она позволяет добавлять getter, setter и deleter методы к атрибуту, сохраняя синтаксис обычного обращения к атрибуту.
Пример:
python
class Circle:
def __init__(self, radius):
self._radius = radius
text
@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 = valuec = Circle(5)
print(c.radius) # вызовет getter
c.radius = 10 # вызовет setter
text
Ключевые моменты:
1. Позволяет добавлять валидацию при установке значения
2. Позволяет вычислять значения на лету при чтении
3. Сохраняет инкапсуляцию, скрывая реальное имя атрибута
4. Позволяет изменять внутреннюю реализацию без изменения интерфейса класса
Софи собрала все вопросы. Тренируйся и получай
офферы быстрее!
офферы быстрее!
Попробовать бесплатно
Следующий вопрос
Это единственный вопрос по вашему фильтру
как отвечать на вопрос
пример собеседования
фреймворки на собеседовании
типичные вопросы junior
интервью вопросы и ответы