-
問題描述
為了程序的正常運行,進行異常處理是有必要的,甚至于有時候,我們會主動的拋出異常,然后讓程序進行異常捕獲,再進行進一步的處理。但是,在開發的程序相對較大的過程中,我們不能一昧的進行try....except。而是要弄清楚到底拋出的是什么異常,同時,對于某些未知的異常,我們應該清楚的定位到到底是哪一行程序拋出的異常,針對這種情況,traceback庫能極大的幫助我們。
?
-
解決方法
代碼只需一行,即?? print(traceback.format_exc())? 即可,這樣即可打印詳細的信息,這個詳細信息比你捕捉完異常打印args詳細多了,詳細到具體第幾行,如果你在一個大型程序里,需要定位錯誤,那么,traceback是十分好用的:
可以清楚的看到 ‘=’ 號上方和下方打印的異常詳細程度是不同的。?
我們還可以通過traceback,獲得異常的名稱,用于根據異常名稱進行異常捕獲,例如,我們直接運行一段程序,并沒有打印出來異常的名字,這樣我們無法通過異常名對異常進行捕獲,因此,我們可以通過traceback獲得異常名:
如上圖,我們無法獲得異常名,下圖展示traceback獲得異常名:
從上圖我們可以看到,我們無法通過args獲取異常名,但是可以通過traceback獲取
更多文章、技術交流、商務合作、聯系博主
微信掃碼或搜索:z360901061

微信掃一掃加我為好友
QQ號聯系: 360901061
您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描下面二維碼支持博主2元、5元、10元、20元等您想捐的金額吧,狠狠點擊下面給點支持吧,站長非常感激您!手機微信長按不能支付解決辦法:請將微信支付二維碼保存到相冊,切換到微信,然后點擊微信右上角掃一掃功能,選擇支付二維碼完成支付。
【本文對您有幫助就好】元
