Разъяснивший Python
6.88K subscribers
3.34K photos
49 videos
30 files
3.4K links
Твой проводник в омут Python'а

Ссылка: @Portal_v_IT

Сотрудничество: @oleginc
Download Telegram
⚡️ Context Manager

Помните про with? Там рассказывалось про его использование с классами, но ничто не мешает использовать его с функциями. Только нужна библиотека contextlib.

Чтобы функция могла работать с with, вы добавляете @contextmanager или @asynccontextmanager, в зависимости от того, нужно ли вам асинхронное выполнение.

Только ещё вам нужно yield, чтобы вернуть объект, с которым будет работать with и при этом только приостановить работу функции. Подробнее.

#миниурок #contextlib