Я хочу сохранить имя ошибки и детали трассировки в переменной. Вот моя попытка.
import sys
try:
try:
print x
except Exception, ex:
raise NameError
except Exception, er:
print "0", sys.exc_info()[0]
print "1", sys.exc_info()[1]
print "2", sys.exc_info()[2]
Вывод:
0 <type 'exceptions.NameError'>
1
2 <traceback object at 0xbd5fc8>
Желаемый результат:
0 NameError
1
2 Traceback (most recent call last):
File "exception.py", line 6, in <module>
raise NameError
PS Я знаю, что это легко сделать с помощью модуля трассировки, но я хочу узнать об использовании здесь объекта sys.exc_info () [2].
<python install path>/Lib/traceback.py
) для получения дополнительной информации.