Connect with us

Обучение

Заметки Python #21: Декораторы

Декораторы одна из наиболее спорных и интересных тем в Python-сообществе. Ей посвящены десятки статей на хабре, но многие так и не могут понять до конца — зачем нужны декораторы?

Теория

Понятие работы декораторов в питоне начинается с одной базовой концепцией этого языка программирования — в Python все функции являются объектами. Это значит, что любая функция может быть привязана к переменной или быть возвращена другой функцией и стать аргументом. Всё это хорошо демонстрируют примеры:

#1 Функция = объект

 

Результат:

#2 Определение функции внутри другой функции

 

Результат

#3 Функция возвращает другую функцию

 

Результат

#4 Передача функции, как параметр другой функции

 

Результат

Практика

Последним примером мы напрямую подобрались к самой сути декоратора — «обёртки» для другой функции. С его помощью мы будем форматировать и рефакторить наш код

#5 Декоратор в действии

 

Результат:

В питоне так же есть и встроенные декораторы: @classmethod, @staticmethod, @property. А еще можно вызывать один декоратор за другим

#6 Использование нескольких декораторов

 

Результат:

Click to comment

Leave a Reply

Ваш e-mail не будет опубликован.

Лучшие сервисы стриминга музыки в 2019 году

Сервисы

Wink Ростелеком: Samsung LG, Sony, Phillips, Android TV

Ростелеком

LG WEB OS: приложения, обновления, настройка, проблемы со звуком

Гаджеты

Ноутбуки Asus не видят жесткий диск. Автоматический вход в BIOS при старте

Гаджеты

.

Digital2.ru - тренды, IT, разработка, цифровая экономика

Connect
Подпишись на нас