python異常處理模組之traceback

2021-08-17 19:58:02 字數 877 閱讀 2059

為了更直觀的顯示錯誤並將其異常詳情列印出來故使用traceback來實現,下面是對其的詳細介紹

下面來介紹traceback模組來進行處理

首先 import traceback

try

: 1/0

except

exception, e:

print e

輸出結果是integer division or modulo by zero,只知道是報了這個錯,但是卻不知道在哪個檔案哪個函式哪一行報的錯。

使用traceback

try

: 1/0

except

exception, e:

traceback.print_exc()

輸出結果

traceback (most recent call last):

file "test_traceback.py", line 3, in

1/0zerodivisionerror: integer division or modulo by zero

這樣非常直觀有利於除錯。

traceback.print_exc()跟traceback.format_exc()有什麼區別呢?

format_exc()返回字串,print_exc()則直接給列印出來。

即traceback.print_exc()與print traceback.format_exc()效果是一樣的。

print_exc()還可以接受file引數直接寫入到乙個檔案。比如

traceback.print_exc(file=open('tb.txt','w+'))

寫入到tb.txt檔案去。

python之異常處理 Python之異常處理

異常物件 請大家執行如下 a 100 0 print a 就會發現直譯器顯示如下的錯誤提示 traceback most recent call last file x.py line 1,in a 100 0 zerodivisionerror division by zero 大家要學會看直譯器...

Python之異常處理

在程式執行過程中影響程式正常執行的內容,稱為異常 nameerror print a indexerror 索引錯誤 li 1,2,3,4 print li 8 keyerror d dict a 1,b 2 print d f zerodivisionerror 除0錯誤 print 10 2 2...

Python之異常處理

try ret int input num 正常執行的 print ret except valueerror 捕捉錯誤 print 請輸入數字 try ret int input num 正常執行的 print ret except valueerror 捕捉錯誤 print 請輸入數字 exce...