Курс 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. Удаление файлов с shutil.os.remove()
  2. Работа с файловой системой в Python
  3. Установка и использование Telegram API в Python
  4. Модуль sys: основы
  5. Структура данных deque в Python
  6. Непрерывная проверка в Python
  7. Решение переменной Шредингера
  8. Оператор break в Python
  9. Закрытие файла в Python
  10. Работа с YAML в Python: PyYAML.
  11. Итераторы в Python
  12. Python: динамическая типизация и проверка типов
  13. Комментарии в Python
  14. Именованные срезы в Python
  15. Необязательные аргументы в Python
  16. Pretty-printing JSON в Python
  17. Присоединение элементов коллекции
  18. Избегание изменяемых аргументов
  19. Нахождение разницы между списками в Python
  20. Метод gt в Python
  21. Логирование в Python
  22. Глобальные переменные в Python
  23. Роль object и type в Python
  24. Создание новых списков в Python
  25. Оператор space-invader
  26. Оператор assert в Python
  27. Декораторы в Python
  28. Измерение времени выполнения кода с использованием time
  29. Определение относительного пути
  30. Ускорение обработки данных с %autoawait
  31. Установка Home Assistant
  32. Конвертация коллекций в Python.
  33. Условные выражения в Python
  34. Объединение списков в Python
  35. Создание пользовательской коллекции в Python
  36. Выбор редактора кода.
  37. Обновление множества в Python
  38. Функции any() и all() в Python
  39. Тайное преобразование типа ключа
  40. Проверка класса объекта
  41. Списки в Python: синтаксис представления
  42. Работа с deque из collections
  43. Работа с комплексными числами
  44. Преобразование данных в Python
  45. Удаление URL-адресов в Python
  46. Многострочные комментарии в Python

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