SobesLab логотип SobesLab

Ответ

Менеджер контекста – это объект, реализующий протокол контекстного управления (`__enter__` и `__exit__` методы). Он используется вместе с конструкцией `with`. Зачем: он автоматически управляет ресурсами – например, открытие и закрытие файлов, установление и освобождение соединений. Код внутри блока `with` получает ресурс через __enter__, а по выходе __exit__ гарантированно выполнит финализацию (закроет файл и т.д.), даже если внутри блока произошло исключение.