Контекстный менеджер и 2 способа его написания. Конструкция WITH
Рассмотрим что такое контекстный менеджер в Python, для чего он нужен и как можно его написать самому. Этот вопрос не редко задают на собеседованиях.
Контекстный менеджер это удобный способ инкапсулировать логику работы с каким то ресурсом try-except-finally, в том числе гарантировать освобождение ресурса, его закрытие. Например закрывать файл, бд, соединение с сетью при выходе из контекста. Многие ресурсы в python уже имеют менеджеры контекста, например для работы с файлами.
Особенности:
1) если пишем менеджер через contextlib то используем yield возвращающий ровно 1 значение (наш ресурс)
2) если пишем менеджер через класс, то используем return в методе __enter__
3) если у какого-либо ресурса уже есть контекстный менеджер, то лучше работать через него
4) используем контекстный менеджер с помощью конструкции WITH
Почитать подробно:
#with-statement-context-managers
#the-with-statement
#context-manager-types
Присоединяйтесь к помощи каналу, будет интересно)
✔️Бусти
Будь первым везде и всегда, включай уведомления о новых выпусках 🔔
#Python #PythonRussian #with #context #contextlib
470 views
1984
613
2 weeks ago 00:03:32 99
Документация - создание сайтов | Создание сайтов для малого и среднего бизнеса
3 weeks ago 01:30:24 169
Микро анимации CSS для сайта на Taptop: Быстро и без кода
3 weeks ago 01:28:45 2.3K
Как работать с офлайн-конверсиями и улучшить результаты рекламы
3 weeks ago 00:34:25 69
С4: коротко о самом важном • Яна Паршина
3 weeks ago 00:06:36 1
16.4 Исключения в контекстном менеджере
4 weeks ago 00:00:47 4
Курс обучения “Менеджер - специалист по контекстной рекламе“
4 weeks ago 00:06:07 17
Курс обучения “Менеджер - специалист по контекстной рекламе“ - 6 секретов контекстной рекламы
4 weeks ago 02:51:49 731
СУПЕРБУСТ ПРОДАЖ, ЭФФЕКТИВНАЯ ВНЕШНЯЯ РЕКЛАМА ДЛЯ WB
4 weeks ago 00:02:30 1
Запуск программы “Отдел Кадров Плюс“ в Linux/Линукс (на примере операционной системы “Астра Линукс“)
2 months ago 00:05:55 1
Не допускай ЭТИХ ОШИБОК при выборе подрядчика на рекламное продвижение
2 months ago 01:33:26 13
Как продвигать личный бренд в соцсетях и СМИ: практические рекомендации
2 months ago 00:19:43 9
Как увеличить продажи с помощью influence-маркетинга?
2 months ago 00:00:58 1
Настройки контекстной рекламы — DMT Lab
2 months ago 00:36:31 1
Как создают мобильные приложения
2 months ago 00:32:56 2
Секрет управления контекстной рекламой для миллионов товаров
2 months ago 00:30:17 2
Нулевая позиция в Яндекс.Директе. Как поймать покупателя на этапе формирования спроса
2 months ago 00:43:11 1
КМС Google Adwords. Базовые таргетинги и форматы объявлений / Google Adwords. Часть 1
2 months ago 00:37:14 1
Проверь себя: запускаем и анализируем рекламу с Яндекс.Метрикой. Галина Блонская Cybermarketing2016
2 months ago 00:20:46 2
Как выжать максимум из контекстной рекламы при минимальных затратах Яндекс.Директ Cybermarketing2017
2 months ago 00:38:23 1
Создание и оптимизация таргетированной рекламы. Конференция Cybermarketing 2017. Руслан Осин
2 months ago 00:15:23 1
Реклама в видеосети Яндекса. Конференция Cybermarketing 2017. Екатерина Одинцова
2 months ago 01:00:29 1
Account Manager. Как правильно общаться с клиентом. Я-Агентство. Выпуск 7. 18+
2 months ago 00:46:11 1
Управление отделом по работе с клиентами. Эксперт проекта Я - АГЕНТСТВО. Борис Шпирт 18+
2 months ago 00:38:07 6
Продажи. Как продать услуги агентства на 1 000 000 рублей и не об@$%ться. Я - агентство. 18+