Вопрос с собеседования. Как работает with в Python и как написать свой контекстный менеджер

Контекстные менеджеры - это способ гарантированно освободить ресурсы (файлы, соединения, блокировки и т.д.). Обычно мы используем with open(...), но можно написать свой:

  • enter вызывается при входе в with - можно инициализировать ресурс.
  • exit вызывается при выходе - даже если внутри блока была ошибка.
  • Аргументы exc_type, exc_val, exc_tb позволяют обработать исключения. #python #собес
Вопрос с собеседования.
Как работает with в Python и как написать свой контекстный менеджер
Контекстные менеджеры - это способ гарантированно освободить ресурсы (файлы, соединения, блокировки и т.д.) | Сетка — социальная сеть от hh.ru