Вы поймали ошибку, залогировали её и хотите пробросить дальше, чтобы пайплайн упал и трейс сохранился. Что нужно сделать внутри except?

AСделать return None, чтобы функция тихо завершилась без проброса исключения наружу
BСделать pass, чтобы блок выполнился без действий и пайплайн продолжил работу дальше
CСделать raise Exception('error'), чтобы поднять новое исключение вместо текущего
DСделать raise без аргументов, чтобы пробросить текущее исключение дальше с traceback
Правильный ответ. Внутри except команда raise без аргументов перекидывает текущее исключение дальше.

Разбор

Если ошибка не является ожидаемой и не должна быть «исправлена» на месте, лучше её не скрывать. raise без аргументов сохраняет оригинальный тип исключения и его трейс, что сильно облегчает отладку. Если вместо этого поднять новое исключение без контекста, можно потерять важные детали о первопричине.

Проверь себя · 1/3разбор после ответа
Вы преобразуете поле из CSV: price = int(text). Иногда там встречается 'N/A'. Какой вариант обработки лучше всего соответствует цели «ловить только ожидаемую ошибку, а не всё подряд»?
Тренировать Python в Telegram

Ещё вопросы по теме «Исключения и отладка»