Python3物件導向 3 異常(1)分類

2021-10-07 13:45:14 字數 959 閱讀 2566

在理想狀態下,**才能返回正確的結果。

在以前,只有嚴格檢查每個函式的輸入才能確保它們是合理的才行。通常,特殊的返回值表明錯誤狀態。例如,通過返回乙個負值表示無法計算得到正值。不同的數字代表不同的錯誤,所有呼叫這一函式的**必須明確地檢查所有的錯誤狀態並且執行對應的動作。很多程式沒有這麼做,那麼程式就崩潰了。

在物件的實際中,情況就不同了。

異常:

本質上是乙個物件。有很多不同的異常類,並且我們可以定義自己的異常類。特殊的錯誤物件只有在合理的時候處理,當發生異常時,所有本該發生的事都沒有發生,除非是在遇到異常時才應該發生的事。

分類:

所有異常都繼承於baseexception

大部分異常都是exception的子類

systemexit和keyboardlnterrupt直接繼承於baseexception

systemexit異常:在程式自然退出時候丟擲,通常是因為我們在**中的某處呼叫了sys.exit函式。

設計這個異常的目的是,在程式最終推出之前完成清理工作,而不需要顯示地處理(因為清理**會完成再finally語句中,)。

如果確實要處理這個異常,通常只是將其丟擲,因為捕獲這個異常將會導致程式無法退出。當然,有時候我們確實希望阻止程式推出,例如還有外儲存的更改時,我們需要詢問使用者他們是否真的想要推出。

因為不想再一般異常捕獲時候捕獲它,因此它直接繼承於baseexception。

keyboardlnterrupt異常:常見於命令列程式,當使用者執行依賴於系統的按鍵組合終端程式是會丟擲這個異常,這是使用者故意中斷乙個正在執行的程式的標準方法,同樣,以結束程式作為對它的響應,應該再finally塊中完成清理任務,

Python3物件導向 3 異常(3)異常作用

當丟擲異常時,看起來好像立即停止了程式的執行。丟擲異常之後的所有 都不會執行,除非處理了這一異常,程式將會退出並給出錯誤資訊。def no return print i am about to raise an exception raise exception this is always rai...

python3物件導向

類 class 描述同屬性和方法的物件的集合。方法 類中定義的函式 例項化 建立乙個類的例項,類的具體物件。物件 通過類定的資料例。包括兩個資料成員 類變數和例項變數 和方法。支援操作 屬性引用和例項化 class myclass i 12345 deff self return hello wor...

Python3 物件導向

類名 這類事物的名字,滿足大駝峰命名法,每乙個單詞的首字母大寫 屬性 這類事物具有什麼樣的特徵,身高,體重,年齡等 方法 這類事物具有什麼樣的行為,會跑,會說話,會跳等 class cat 名字貓的類,建議用大駝峰 def init self,new name,new age self.name n...