Контекстные менеджеры Python: задачи на with, откат и исключения

Блок with заканчивается не всегда успешно. Нужно решить, какие изменения сохранить, какие откатить и какое исключение вернуть вызывающему коду. В этой подборке вы реализуете временную подмену списка, транзакционные изменения словаря, вложенные входы и откат списания ресурсов. Отдельные задания проверяют подавление и замену исключений. Начните с вопроса об аргументах exit, затем переходите от простой временной подмены к вложенному состоянию.

Как заниматься

8 заданий ниже можно проходить по порядку или выбирать нужную проблему. В заданиях на код есть проверка решения; в вопросах — проверка выбранного ответа. Требования к реализации и примеры приведены на страницах заданий.

Вся практика собрана в бесплатном большом задачнике по Python для разработчиков.

Смежная практика

Контекстные менеджеры Python: задачи на with, откат и исключения