Курс 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. Метод count() для списка
  2. Освоение Python
  3. Импорт модуля из другого каталога
  4. Методы Python для работы с данными
  5. Транспонирование 2D-массива с помощью zip
  6. Импортирование в Python
  7. Тестирование с unittest
  8. Непрерывная проверка в Python
  9. Создание спинбокса в tkinter
  10. Удаление дубликатов из списка с помощью dict.fromkeys
  11. Мониторинг памяти с Pympler
  12. Разделение строк в Python
  13. Установка Python — Простое руководство
  14. Дефолтные параметры в Python
  15. Проверка наличия элемента в списке
  16. Нахождение пересечения множеств
  17. Получение ID текущего процесса
  18. Модуль inspect: получение информации о объектах
  19. Повторение и перенос строки
  20. Объединение кортежей в Python
  21. Получение ID процесса
  22. Справка по импортированным модулям
  23. Итераторы в Python
  24. Подсчет элементов с помощью Counter из collections
  25. Вычисление фазы комплексного числа
  26. Чтение бинарного файла в Python.
  27. Срезы в Python
  28. Создание списков в Python
  29. Добавление элемента к кортежу
  30. Python groupby() из itertools: работа с повторяющимися элементами
  31. Ограничение итераций в Python
  32. Вставка переменных в шаблоны Flask
  33. Обработка исключений в Python
  34. Конвертация текстовых чисел с помощью Numerizer
  35. Метод splitlines() для разделения строк
  36. Переменные в Python: сокращение гласных
  37. Преобразование типов данных в set comprehension
  38. Избегайте изменяемых аргументов
  39. Обработка ошибок в Python
  40. Разработка игры Pong с turtle
  41. Объединение словарей в Python
  42. Вычисление разности множеств в Python
  43. Поиск подстроки в строке
  44. Сравнение def и lambda функций в Python
  45. Работа с дробями в Python
  46. Курс Data Scientist в медицине
  47. Метод classmethod
  48. Отрицательные индексы списков
  49. Преобразование текста в нижний регистр

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