1. 程式人生 > 其它 >Python:自定義異常

Python:自定義異常

Python 有許多內建異常,當程式中出現錯誤時,它們會強制您的程式輸出錯誤。

但是,有時您可能需要建立自己的自定義例外來滿足您的目的。

建立自定義異常

在 Python 中,使用者可以通過建立新類來定義自定義異常。這個異常類必須直接或間接地從內建Exception派生大多數內建異常也是從這個類派生的。

class TooLongExceptin(Exception):
"this is user's Exception for check the length of name "
def __init__(self,leng):
self.leng = leng
print("姓名長度是" + str(self.leng) + ",超過長度了")

當我們開發一個大型 Python 程式時,將我們的程式引發的所有使用者定義的異常放在一個單獨的檔案中是一個很好的做法。
許多標準模組都這樣做。他們將異常分別定義為
exceptions.pyerrors.py(通常但並非總是如此)。
使用者自定義異常類可以實現普通類可以做的一切,但我們一般都讓它們變得簡單和簡潔。大多數實現聲明瞭一個自定義基類並從這個基類派生其他異常類。這個概念在下面的例子中更加清晰。

示例:Python 中的使用者定義異常

在此示例中,我們將說明如何在程式中使用使用者定義的異常來引發和捕獲錯誤。

def name_Test():
try:
name = input("enter your naem:")
if len(name) > 4:
raise TooLongExceptin(len(name))
else:
print(name)

except TooLongExceptin : # 這裡異常型別是使用者自定義的
print("捕捉到異常了")
finally:
print('結束')
name_Test()
我們已經定義了一個名為TooLongExceptin.
我們的程式實際觸發raise,會來到except