Удалить попробовать, кроме: передать блок в Python
Есть ли способ удалить код, подобный этому
try:
# some code
# ...
except:pass
только код внутри try
блок?
причина в том, что предыдущий разработчик написал, где каждый код имеет это (более 1000 строк и несколько файлов), поэтому любая ошибка в коде не может быть распечатана.
Я пытался вручную, используя поиск и замену, чтобы изменить try:
а также except:pass
к '', но это утомительно, слишком много времени и проблема с отступом.
помочь.. это дает мне головную боль...
2 ответа
Просто найти / заменить except:pass
с except:raise
если вам нужно исправить текущую ошибку.
Хотя, в конце концов, вам придется прикусить пулю и на самом деле исправить код.
Параметры могут немного отличаться в зависимости от того, какую IDE и ОС вы используете. Вот метод, который должен работать на вариантах Linux и Mac.
grep -r "except:pass" -l * | xargs sed -i .bak 's/except:pass/except: import sys; print(sys.exc_info()[0])/g'
grep
находит каждый файл, содержащий "кроме: проход" в текущей папке или любых подпапках, а затем передает этот список файлов sed
, который заменяет бесполезный код универсальным оператором печати исключения.