Встречается на 1% собеседований по Python

Какие знаешь Python property

В Python property — это декоратор, который позволяет управлять доступом к атрибутам класса, добавляя геттеры, сеттеры и делитеры без изменения интерфейса.

Основные методы:

  1. @property — геттер для чтения атрибута.
  2. @<property_name>.setter — сеттер для установки значения.
  3. @<property_name>.deleter — делитер для удаления атрибута.

Пример:

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 isinstance(value, str):
            raise ValueError("Name must be a string")
        self._name = value

    @name.deleter
    def name(self):
        print("Deleting name...")
        del self._name

Применение:

  • Валидация данных.
  • Ленивые вычисления.
  • Защита атрибутов от прямого изменения.

property делает код чище, инкапсулируя логику доступа к атрибутам.

Sophi
Софи собрала все вопросы. Тренируйся и получай
офферы быстрее!
Попробовать бесплатноArrow

Следующий вопрос

Это единственный вопрос по вашему фильтру

как отвечать на вопрос
пример собеседования
фреймворки на собеседовании
типичные вопросы junior
интервью вопросы и ответы