Я пытаюсь записать ошибку, которая вызвала остановку моего процесса, но traceback.print_tb
и traceback.print_exc
, похоже, не понимают, что такое ошибка.
Другими словами, почемуследующий вывод «None \ n» вместо «DivisionByZero .. и т. д.»?(Изменить: ... и как мне получить доступ к поднятой / обработанной ошибке из exit_fn?)
import traceback, atexit
def exit_fn():
print 'exiting'
if traceback.format_exc().startswith('None'):
print 'why is this None?'
atexit.register(exit_fn)
x = 1/0