你會如何解釋在 Python 中異常是一個物件?


是的,在給定的程式碼中,“err”是一個異常物件。

在 Python 中,一切都稱為物件。每個物件都有屬性和方法。因此,異常就像列表、函式、元組等都是物件。所以異常也像其他物件一樣有屬性。可以按如下方式設定和訪問這些屬性。異常有基本類,幾乎所有其他異常都是其子類。如果 e 是一個異常物件,那麼 e.args 和 e.message 是其屬性。

在當前的 Python 實現中,異常由三部分組成:型別、值和回溯。sys 模組在三個變數(exc_type、exc_value 和 exc_traceback)中描述了當前的異常物件。

sys.exc_info() 函式返回這三個屬性的元組,而 raise 語句有接受這三個部分的三元式形式。

給定的程式碼給出以下輸出

(<type 'exceptions.ValueError'>, ValueError('could not convert
string to int: Godzilla!',), <traceback object at 0x0000000002E33748>)

更新於: 2019-09-26

172 瀏覽

職業生涯起步

透過完成課程獲得認證

開始學習
廣告
© . All rights reserved.