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型別 ...