python自定義異常和主動(dòng)拋出異常(raise)

前言

有時(shí)候python自帶異常不夠用,如同java,python也可以自定義異常,并且可以手動(dòng)拋出。注意,自定義異常只能由自己拋出。python解釋器是不知道用戶自定義異常是什么鬼的。

raise語句

主動(dòng)拋出異常。
格式:
主動(dòng)拋出異常終止程序
raise 異常名稱('異常描述')

raise RuntimeError('testError')
image.png

主動(dòng)拋出這個(gè)異常,并加以解釋。

自定義異常

python的異常分為兩種.
1、內(nèi)建異常,就是python自己定義的異常。
2、不夠用,用戶自定義異常,
首先看看python的異常繼承樹


image.png

我們可以看到python的異常有個(gè)大基類。然后繼承的是Exception。所以我們自定義類也必須繼承Exception。

#最簡單的自定義異常
class FError(Exception):
    pass

拋出異常、用try-except拋出

try:
    raise FError("自定義異常")
except FError as e:
    print(e)
   
image.png

在這里給一個(gè)簡單的自定義異常類模版。

class CustomError(Exception):
    def __init__(self,ErrorInfo):
        super().__init__(self) #初始化父類
        self.errorinfo=ErrorInfo
    def __str__(self):
        return self.errorinfo
    
if __name__ == '__main__':
    try:
        raise CustomError('客戶異常')
    except CustomError as e:
        print(e)
image.png
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡書系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

  • 一、簡介 Python最強(qiáng)大的結(jié)構(gòu)之一就是它的異常處理能力,所有的標(biāo)準(zhǔn)異常都使用類來實(shí)現(xiàn),都是基類Exceptio...
    隨風(fēng)化作雨閱讀 3,142評論 0 1
  • Python異常處理 異常概念: 異常:就是不正常的情況,程序開發(fā)過程中錯(cuò)誤和BUG都是補(bǔ)充正常的情況 異常發(fā)生的...
    youngkun閱讀 982評論 0 4
  • 1.什么是異常(what) 異常:不正常的情況 不正常的情況,在程序中,會(huì)有兩種體現(xiàn): l自己造孽:寫錯(cuò)代碼了!錯(cuò)...
    Customer_閱讀 753評論 0 0
  • 轉(zhuǎn)載自:JmilkFan_范桂颶:http://blog.csdn.net/jmilk 異常 異常即非正常狀態(tài),在...
    ccq_inori閱讀 3,828評論 0 1
  • 定義類并創(chuàng)建實(shí)例 在Python中,類通過 class 關(guān)鍵字定義。以 Person 為例,定義一個(gè)Person類...
    績重KF閱讀 4,099評論 0 13

友情鏈接更多精彩內(nèi)容