Курс Python → Декоратор Property в Python

Декоратор @property в Python используется для превращения метода класса в свойство, что позволяет обращаться к нему как к атрибуту объекта без вызова метода. Это удобно, когда необходимо скрыть сложную логику вычислений или обработки данных, делая интерфейс класса более интуитивно понятным.

Рассмотрим пример с классом Circle, который имеет атрибут radius и метод area, вычисляющий площадь окружности по заданному радиусу. После добавления декоратора @property к методу area, мы можем обращаться к нему как к свойству объекта circle, не вызывая его явно.


class Circle:
    def __init__(self, radius):
        self.radius = radius

    @property
    def area(self):
        return 3.14159 * self.radius ** 2

circle = Circle(5)
print(circle.area)  # Выводит площадь окружности с радиусом 5

В данном примере при обращении к атрибуту area объекта circle происходит автоматическое вычисление площади окружности, что делает код более читаемым и удобным для использования. Декоратор @property позволяет объединить функционал метода и атрибута в один логический блок, что упрощает взаимодействие с объектами.

Таким образом, использование декоратора @property в Python помогает сделать код более эффективным и понятным. Этот механизм позволяет инкапсулировать сложную логику работы с данными внутри класса, скрывая детали реализации и предоставляя простой интерфейс для взаимодействия с объектами.

Твои коллеги будут рады, поделись в

Автор урока

Дмитрий Комаровский
Дмитрий Комаровский

Автоматизация процессов
в КраснодарБанки.ру

Другие уроки курса "Python"

  1. Итерации в Python
  2. Работа с комплексными числами
  3. Резервирование символов в Python
  4. Метод init в Python
  5. Конкатенация списков в Python
  6. Определение функций с необязательными аргументами
  7. Поиск наиболее частого элемента в списке
  8. Перетасовка списков в Python
  9. Функция findall() для поиска вхождений строки
  10. Область видимости переменных
  11. Многострочные комментарии в Python
  12. Методы Python для работы с данными
  13. Нарезка списков в Python
  14. Оператор объединения словарей
  15. Функция count() в Python
  16. Метод classmethod
  17. Работа с байтовыми строками в Python
  18. Анонимные функции в Python
  19. Python Менеджер контекста
  20. Разделение строк в Python
  21. Экспорт функций в Python
  22. Принцип одной функции
  23. Обратное распространение ошибки
  24. Путь к интерпретатору Python
  25. Создание новой даты в Python
  26. Функция enumerate() в Python
  27. Создание словарей и множеств в Python.
  28. Объединение списков в Python
  29. Пропуск начальных строк с помощью dropwhile()
  30. Метод enumerate() в Python
  31. Множества и frozenset
  32. Работа с YAML в Python: PyYAML.
  33. Многострочные комментарии в Python
  34. Python Тесты и Гайды
  35. Генераторные функции в Python
  36. Курсы Яндекс Практикум
  37. Создание итерируемых объектов
  38. Принципы SRP и OCP
  39. Скачать видео с YouTube
  40. Закрытие файла в Python
  41. Операции с числами в Python
  42. Форматирование кода на Python
  43. Функция reversed() в Python
  44. Проверка переменных окружения в Python

Marketello читают маркетологи из крутых компаний