Декораторы в Python

preview_player
Показать описание
В этом видео мы поговорим о декораторах в Python. На собеседованиях о них часто спрашивают. Мы детально рассмотрим механизмы работы декораторов на примере lru_cache из functools и сами напишем его простенький аналог. Узнаем как делаеть декораторы на основе функций и классов, какие вспомогательные инструменты для этого есть, как делать декораторы с параметрами и что можно декорировать с их помощью. И даже рассмотрим совсем уж экзотические примеры того, что может быть использовано в качестве декоратора.

0:00 Вступление
0:51 Последовательность Фибоначчи
1:54 Медленная рекурсия
2:43 Ускорили с декоратором lru_cache
3:46 Что такое декоратор?
4:47 Самый простой декоратор
5:03 Чуть усложняем
5:46 Делаем более универсально
6:44 Свой кеширующий декоратор
8:01 Декораторы сломали атрибуты
8:58 Чиним ручным копированием
9:35 Чиним с помощью wraps
10:18 Декоратор с параметрами
12:23 Класс как декоратор
14:59 Подменили функцию объектом
15:25 Декорируем двумя декораторами
15:47 В каком порядке применяются декораторы?
16:45 Декораторы для классов
18:10 Извращаем идею декораторов
19:27 В следующем видео
Рекомендации по теме
Комментарии
Автор

Неплохо рассказано о декораторах. Я много промотрел виде ваше лучшее. Не все умеют доносить информацию

kavajno
Автор

Классный урок! Побольше бы таких наглядных уроков!

ВладКалошин-хъ
Автор

Хорошо получается объяснять новые видео записывай. Не останавливаться.

РусланРахматуллаев-яд
Автор

Я не знаю кто Вы, но объясняете вы прекрасно. Спасибо.

-MaCkRage-
Автор

спасибо, одно из самых понятных объяснений про декораторы. Продолжай! Подписка.

___DS___
Автор

О, канал совсем молодой, оказывается. Вообще не подумал бы, качество - топ 👍

Не знал раньше про декораторы, было очень полезно. Спасибо автору. И ютубу, что привёл меня сюда.(просто всплыло в рекомендациях, я специально не искал)

vladimiru
Автор

Отлично! Просто отлично обьяснил. Спасибо!

Michael
Автор

Может для jupyter не надо, но в PyCharm вам нужно будет сделать импорт
from functools import wraps

Чтобы воспользоваться декоратором wraps.

P.S. Самое понятное и живое объяснение декораторов, особенно с параметрами.

letronas
Автор

Автор, продолжай запись.
У тебя действительно хорошо получается.

inoj
Автор

еще один ))) . Ты пишешь декоратор. Но как узнать что он делает если его не делаешь а просто кто то в видео пишет сверху декоратор не объясняя что он делает и откуда взялся ?

Himera
Автор

Очень хорошее объяснение, про дефолтные декораторы обычно забывают упомянуть. Что на очереди? итераторы и генераторы может быть?)

ВячеславМакедонский-тъ
Автор

Автор, у тебя отлично получается. Почему так мало роликов выкладываешь? Давай ещё)

Пранкадемия
Автор

То ли я утомился за день, то ли уровень сложный, то ли максимально много упущено мест, где можно прокомментировать подробнее. В общем сложнее, чем в прочих видео на YT.

gienek_mscislawski
Автор

А как выудить значение cnt при таком порядке декора:
@lru_cache
@counter
def fib():
...

pyatsyshin
Автор

Ощущение, что на функции Фибоначчи не самый лучший способ показать декораторы

radunov.a
Автор

Вот весь lru_cache на практике при том же коде: TypeError: Expected maxsize to be an integer or None
В чём же ошибка?

jokeantishev
Автор

так что такое декоратор, нифига не понял

getteg
Автор

Друг, лучше расскажи про парсеры футбола пожалуйста

dimamihalev
Автор

Господи, если вы кодер и вам нужно двадцати минутное видео, что бв понять декораторы, может программирование это не ваше?

maksimvolkov