В Python есть ли какая-либо языковая (или интерпретаторная) функция, заставляющая интерпретатор python всегда генерировать исключения, даже если код, вызывающий исключение, находится внутри блока try / исключением?
Я только что унаследовал большую и старую кодовую базу, написанную на python, целью которой является взаимодействие с некоторыми специально разработанными аппаратными средствами, которые мы также разработали.
Многие ошибки связи и тайм-ауты маскируются / пропускаются из-за следующего (упрощенного) шаблона кода:
try:
serialport.write(MSG)
except:
some_logging_function_mostly_not_working_that_might_be_here_or_not()
#or just:
#pass
Чтобы избежать типичного сценария «просто переписать все с нуля», я сейчас пытаюсь исправить все исключения ошибок / тайм-аутов. Я делаю это, отключая вручную весь код обработки исключений, по одному за раз.