Python-курс
🛟 Ошибки, файлы и JSON

Менеджеры контекста и with

Гарантированная уборка: __enter__/__exit__ и contextlib.

~1 ч 30 минСредний 6 уроков

Бытовая аналогия: аренда переговорки

Когда вы бронируете переговорку, происходит две вещи: на входе вам выдают ключ и включают свет, а на выходе — забирают ключ и гасят свет. Причём убрать за собой нужно, даже если встреча прошла ужасно и вы выбежали в гневе.

Менеджер контекста — это и есть такой администратор: он гарантированно выполняет «вход» и «выход», что бы ни случилось внутри. Именно поэтому with open(...) закрывает файл сам — даже если внутри блока случилась ошибка.

Шаг 1 из 10