如何在 Python 中手動丟擲/引發異常?


我們使用最符合我們特定問題的最具體的異常建構函式,而不是引發通用異常。為了捕獲我們的特定異常,我們將不得不捕獲對其進行子類的所有其他更具體的異常。

我們應該引發特定的異常並處理相同的特定異常。

使用 raise 語句按如下方式引發特定異常。

示例

import sys
try:
f = float('Tutorialspoint')
print f
raise ValueError
except Exception as err:
print sys.exc_info()

輸出

我們得到以下輸出

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

我們甚至可以引發具有以下示例一樣引數的錯誤

示例

try:
raise ValueError('foo', 23)
except ValueError, e:
print e.args

輸出

我們得到以下輸出

('foo', 23)

更新於: 12-Feb-2020

193 瀏覽次數

開啟 職業生涯

完成課程並獲得認證

開始
廣告
© . All rights reserved.