python 3.6 抓異常的方法try/except
阿新 • • 發佈:2018-11-02
老版本的Python,except語句寫作"except Exception, e",Python 2.6後應寫作"except Exception as e"。
try:
...
except Exception as e:
...
-
str(e)
返回字串型別,只給出異常資訊,不包括異常資訊的型別,如1/0的異常資訊
‘integer division or modulo by zero’ -
repr(e)
給出較全的異常資訊,包括異常資訊的型別,如1/0的異常資訊
“ZeroDivisionError(‘integer division or modulo by zero’,)” -
e.message
獲得的資訊同str(e) -
採用traceback模組
需要匯入traceback模組,此時獲取的資訊最全,與python命令列執行程式出現錯誤資訊一致。使用traceback.print_exc()列印異常資訊到標準錯誤,就像沒有獲取一樣,或者使用traceback.format_exc()將同樣的輸出獲取為字串。你可以向這些函式傳遞各種各樣的引數來限制輸出,或者重新列印到像檔案型別的物件。
與Python異常相關的關鍵字:
關鍵字 關鍵字說明
raise 丟擲/引發異常
try/except 捕獲異常並處理
pass 忽略異常
as 定義異常例項(except IOError as e)
finally 無論是否出現異常,都執行的程式碼
else 如果try中的語句沒有引發異常,則執行else中的語句
except
老版本的Python,except語句寫作"except Exception, e",Python 2.6後應寫作"except Exception as e"。
https://blog.csdn.net/u010532552/article/details/53995075
https://www.cnblogs.com/Simon-xm/p/4073028.html