您現在的位置是:首頁 > 遊戲
Python自定義異常類、with上下文管理與trackback模組
所有異常類都繼承什麼類
【1】自定義異常類
再強大的語言也不可能包含所有的異常,所以Python提供給使用者
自定義異常類
的許可權。
自定義異常類一般都是執行時異常,通常繼承 Exception 或其子類即可。命名一般以 Error、Exception 為字尾。自定義異常由 raise 語句主動丟擲。
用
class
定義一個繼承
Exception
的異常類
AgeError
;
AgeError
中定義初始化函式和異常報錯資訊函式;
異常報錯資訊透過
return
返回。
【注】class定義類會在後續專門的篇章詳解。
看看執行效果:
【2】with上下文管理
在學習異常的結構後,我們得知finally塊中的程式碼不管異常是否發生都會被執行,執行完之後就釋放try塊中申請的資源。
Python提供來另外一種釋放資源的方法,那就是透過with上下文管理來實現。
該方式的優點在於:
它可以自動管理資源,在 with 程式碼塊執行完畢後自動還原進入該程式碼之前的現場或上下文。不論何種原因跳出 with 塊,不論是否有異常,總能保證資源正常釋放。極大地簡化了工作,在檔案操作、網路通訊相關的場合非常常用。
語法格式
with context_expr [ as var]:
語句塊
案例
【注】檔案操作知識點也在後續學習中有專門篇章講解。
【3】trackback模組
trackback模組用來列印異常資訊。
推薦文章
- 石器時代手遊《恐龍神奇寶貝》季度賽賽程更新,如何成為冠軍?
而參與石器時代手遊比賽但未能晉級的原始人,也可以獲得300聲望、100重生石、面板碎片和騎證碎片的獎勵哦~本週石器時代手遊季度賽本服積分賽將於今晚1月13日20:00-20:15,開啟參賽原始人入場,贏取積分晉級石器時代比賽,向冠軍之位進發...
- 品質沙發,你的靠譜選擇——左右沙發
其創始人黃華坤先生於1986年開始製作沙發,帶領左右沙發從名不見經傳的小工廠發展為中高階傢俱前行者,致力於打造更高質量、更高顏值、更富有設計感的品質沙發產品,成為了眾多家庭的靠譜選擇...
- 堅持“不要臉”,你便能賺到錢了
02厚著臉皮,接受他人的點評通往成功的路上,每個人都會接收到各種各樣的聲音...