TGTGInsightinteligencia telegramLIVE / telegram public index
← Python Academy
Python Academy avatar

TGINSIGHT POST

Post #1916

@python_academy

Python Academy

Vistas6,630Número de vistas
Publicado18 dic18/12/2024, 10:48
Contenido del post

Contenido

Более простой способ создания контекстных менеджеров Почти год назад на канале было объяснение про то, что такое контекстные менеджеры и зачем они нужны. Также был пост, показывающий, как создавать классы с использованием протокола менеджера контекста. Но не всегда хочется реализовывать магические методы __enter__ и __exit__. В качестве альтернативы есть один классный прием в пакете contextlib. Там протокол управления контекстом реализован с использованием декоратора contextmanager. Первая часть функции tag, которая идёт до yield, выполняется при входе в блок with. Затем исполняется сам этот блок, а после этого завершается оставшаяся часть функции tag. #contextlib