異常信息的獲取對於程序的調試非常重要,可以有助於快速定位有錯誤程序語句的位置。下面介紹幾種python中獲取異常信息的方法,這裏獲取異常(Exception)信息采用try...except...程序結構。
1、str(e)返回字符串類型,只給出異常信息,不包括異常信息的類型,如1/0的異常信息'integer division or modulo by zero'。
2、repr(e),給出較全的異常信息,包括異常信息的類型,如1/0的異常信息"ZeroDivisionError('integer division or modulo by zero',)"。
3、e.message,獲得的信息同str(e)。
4、采用traceback模塊,需要導入traceback模塊,此時獲取的信息最全,與python命令行運行程序出現錯誤信息壹致。使用traceback.print_exc()打印異常信息到標準錯誤,就像沒有獲取壹樣,或者使用traceback.format_exc()將同樣的輸出獲取為字符串。妳可以向這些函數傳遞各種各樣的參數來限制輸出,或者重新打印到像文件類型的對象。