python自定義異常

2021-08-11 03:49:49 字數 1577 閱讀 4734

1、可以通過建立乙個新的exception類來擁有自己的異常。異常應該繼承自 exception 類,或者直接繼承,或者間接繼承。

>>>

raise

nameerror

('hithere'

)

traceback

(most recent call last

):

file"",

line 1,

in<

module

>

raise

nameerror

('hithere'

)

nameerror

:hithere

2、raise 唯一的乙個引數指定了要被丟擲的異常。它必須是乙個異常的例項或者是異常的類(也就是 exception 的子類)。

如果你只想知道這是否丟擲了乙個異常,並不想去處理它,那麼乙個簡單的 raise 語句就可以再次把它丟擲。

>>>

class

myerror

(exception

):

def

__init__

(self

,value

):

self

.value

=value

def

__str__

(self

):

return

repr

(self

.value

)

>>>

try:

raise

myerror(2

*2)

except

myerrorase

:

print

('my exception occurred, value:',e

.value

)

my

exception occurred

,value

:4

>>>

raise

myerror

('oops!'

)

traceback

(most recent call last

):

file"",

line 1,

in<

module

>

raise

myerror

('oops!'

)

myerror

:'oops!'

python 自定義異常

try print num 直譯器執行 時,一旦發現錯誤,會根據錯誤型別自動建立乙個異常物件並且傳遞該異常物件 手動建立異常物件並且傳遞 丟擲 raise nameerror num未命名 except nameerror as error as error 就是將 捕獲到的異常物件 賦值給 err...

Python 自定義異常

這個自定義異常的案例裡面,有個關鍵字沒有做解釋。果斷google一下,raise的意思是丟擲指定的異常。其他的倒沒什麼,不過這種指定異常應該挺特殊的,但是沒有想到該在什麼場景使用。usr bin python coding gbk 自定義乙個異常 class shortinputexception ...

異常 自定義異常

package test 01 練習 計算成績的平均值 異常的情況 成績為負數 me 總結 練習寫好乙個程式,思路最重要要做到心中有數,當計算成績的平均值,定義乙個方法,最後這個方法返回平均數即可 關鍵在於 方法的引數是啥?返回值型別是啥?當然是乙個陣列 可變引數組int grades int型別 ...