(python)为什么sys.exc_info取不出值?
程序中调用
log_file = open( 'test.log ', 'a ')
etype = sys.exc_info()[0]
evalue = sys.exc_info()[1]
etb = traceback.extract_tb(sys.exc_info()[2])
log_file.write( 'Error in routine: your routine here\n ')
log_file.write( 'Error Type: ' + str(etype) + '\n ')
log_file.write( 'Error Value: ' + str(evalue) + '\n ')
log_file.write( 'Traceback: ' + str(etb) + '\n ')
log_file.close()
sys.exit()
来处理异常。
运行后,程序退出,但是对应的test.log中对应的etype,evalue,etb都是空的。问问这是为什么?
[解决办法]
程序中未有异常,当然不会有值了,一般处理异常都用
try
...
except:
...
try
...
final:
...