Этап 3 из 11 · ≈ 4 ч

Исключения и контекстные менеджеры

Основа с Junior

try, except, else и finally, цепочки исключений, свои исключения, with и контекстные менеджеры.

Что важно знать

  • Голый except прячет ошибки.
  • finally выполняется всегда, else — только без исключения.
  • raise from сохраняет исходную причину в трассировке.

Критерии освоения

Junior ≈ 4 ч

  • Пишет обработку ошибок с try, except, else и finally и ловит конкретные исключения
  • Освобождает ресурсы через with и пишет свой контекстный менеджер

Практика. Написать контекстный менеджер для временной смены рабочего каталога — классом и через contextlib.

Middle ≈ 4 ч

  • Строит иерархию своих исключений и сохраняет причину через raise from

Практика. Описать иерархию исключений для своего сервиса и заменить голые except Exception на конкретные.

Проверка знаний

Войдите, чтобы пройти тест: сданный тест отмечает тему пройденной на карте и в ИПР.

Вопросы с собеседований

Смотреть все
Как работают try, except, else и finally?Junior

try — опасный код, except — обработка, else — если ошибки не было, finally — всегда.

Полный разбор
Что такое контекстный менеджер и как работает with?Junior

Контекстный менеджер гарантирует подготовку и очистку вокруг блока with, даже при исключении.

Полный разбор
Что такое цепочки исключений (raise from) и как правильно создавать свои исключения?Middle

raise NewError(...) from err сохраняет исходную ошибку в __cause__ — в трассировке «The above exception was the direct cause». Простой raise внутри except ставит __context__ («During handling … another exception occurred»). from None скрывает исходную. Свои…

Полный разбор
Чем asyncio.gather отличается от TaskGroup и как в них обрабатываются ошибки?Middle

Оба запускают корутины конкурентно. gather при первой ошибке пробрасывает её, но остальные задачи продолжают работать брошенными (если не return_exceptions=True). TaskGroup (3.11) — структурная конкурентность: ошибка в одной задаче отменяет остальные, блок…

Полный разбор

Разборы темы

← Вся карта «Python»

Партнёр платформы

Разбор собеседования с sotto

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

Разбор собеседования