Встречается на собеседованиях • сегодня
Как объявляется property
В Python property используется для создания управляемых атрибутов класса. Оно позволяет добавлять геттеры, сеттеры и делитеры к атрибуту, не меняя интерфейс класса.
Пример:
python
class Circle:
def __init__(self, radius):
self._radius = radius # Приватный атрибут
@property
def radius(self):
"""Геттер для радиуса."""
return self._radius
text
@radius.setter
def radius(self, value):
"""Сеттер для радиуса с проверкой."""
if value < 0:
raise ValueError("Радиус не может быть отрицательным")
self._radius = value
@radius.deleter
def radius(self):
"""Делитер для радиуса."""
del self._radiustext
**Как это работает:**
1. `@property` превращает метод в геттер.
2. `@attr.setter` определяет сеттер.
3. `@attr.deleter` определяет делитер.
Теперь можно работать с `radius` как с обычным атрибутом, но логика геттера/сеттера будет выполняться:
```python
c = Circle(5)
print(c.radius) # 5 (вызов геттера)
c.radius = 10 # вызов сеттера
del c.radius # вызов делитера
Софи собрала все вопросы. Тренируйся и получай
офферы быстрее!
офферы быстрее!
Попробовать бесплатно
Следующий вопрос
Это единственный вопрос по вашему фильтру
как отвечать на вопрос
пример собеседования
фреймворки на собеседовании
типичные вопросы junior
интервью вопросы и ответы