最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

python如何使用raise拋出自定義異常

 更新時間:2023年08月12日 09:19:25   作者:一二三四!  
這篇文章主要介紹了python如何使用raise拋出自定義異常問題,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教

python使用raise拋出自定義異常

1.顯然下面這段代碼中'索引越界了...'是這樣被傳遞的

接下來讓我們看一下具體的實現(xiàn)

練習(xí)1:判斷輸入字符串的長度,如果小于指定的長度就報錯

class ShortInputException(Exception):
    def __init__(self, length, least_length):
        super().__init__()
        self.length = length
        self.least_length = least_length
    def __str__(self):
        return '您輸入的長度為:{},最短長度為:{}'.format(self.length, self.least_length)
try:
    content = input('請輸入內(nèi)容:')
    if len(content) < 5:
        raise ShortInputException(len(content), 5)
    else:
        print('符合要求')
except ShortInputException as e:
    print(e)
'''
請輸入內(nèi)容:ASD
您輸入的長度為:3,最短長度為:5
'''

注意: 

以上程序中,關(guān)于代碼# Exception.__init__(self)的說明

這一行代碼,可以調(diào)用也可以不調(diào)用,建議調(diào)用,因為__init__方法往往是用來對創(chuàng)建完的對象進行初始化工作,如果在子類中重寫了父類的__init__方法,即意味著父類中的很多初始化工作沒有做,這樣就不保證程序的穩(wěn)定了,所以在以后的開發(fā)中,如果重寫了父類的__init__方法,最好是先調(diào)用父類的這個方法,然后再添加自己的功能。

python主動拋出異常、自定義異常

1. 拋出異常

1.1 raise

raise 指定要拋出的異常。

對應(yīng)參數(shù)必須是異常的實例或是異常的類(Exception)

例:

def fun(x): ?
? ? if x > 5: ?
? ? ? ? raise Exception(f"x 不能大于 5,x={x}")
"""
Traceback (most recent call last):
? File "<stdin>", line 1, in <module>
? File "<stdin>", line 3, in fun
Exception: x 不能大于 5,x=7
"""

1.2 assert

assert condition
# condition 為真,不做任何事情
# condition 為假,拋出AssertionError異常
# 等價于:
if not condition: ?
? ? raise AssertionError()
# ****************************************
assert condition, "錯誤原因"
==>?
if not condition:
?? ?raise AssertionError("錯誤原因")

2. 自定義異常

自定義類異常必須繼承 Exception

自定義異常:

class MySQLError(Exception):
? ? def __init__(self, error_info):
? ? ? ? super(MySQLError, self).__init__(error_info)
? ? ? ? self.error_info = error_info
? ? def __str__(self):
? ? ? ? return self.error_inf

使用自定義異常:

try:
? ? raise MySQLError('異常')
except MySQLError as e:
? ? print(e)

總結(jié)

以上為個人經(jīng)驗,希望能給大家一個參考,也希望大家多多支持腳本之家。

相關(guān)文章

  • 對python中使用requests模塊參數(shù)編碼的不同處理方法

    對python中使用requests模塊參數(shù)編碼的不同處理方法

    今天小編就為大家分享一篇對python中使用requests模塊參數(shù)編碼的不同處理方法,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2018-05-05
  • python 將numpy維度不同的數(shù)組相加相乘操作

    python 將numpy維度不同的數(shù)組相加相乘操作

    這篇文章主要介紹了python 將numpy維度不同的數(shù)組相加相乘操作,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2021-03-03
  • 使用Python創(chuàng)建一個視頻管理器并實現(xiàn)視頻截圖功能

    使用Python創(chuàng)建一個視頻管理器并實現(xiàn)視頻截圖功能

    在這篇博客中,我將向大家展示如何使用 wxPython 創(chuàng)建一個簡單的圖形用戶界面 (GUI) 應(yīng)用程序,該應(yīng)用程序可以管理視頻文件列表、播放視頻,并生成視頻截圖,我們將逐步實現(xiàn)這些功能,并確保代碼易于理解和擴展,感興趣的小伙伴跟著小編一起來看看吧
    2024-08-08
  • Python 轉(zhuǎn)移文件至云對象存儲的方法

    Python 轉(zhuǎn)移文件至云對象存儲的方法

    對象存儲(Cloud Object Storage,COS)是一種存儲海量文件的分布式存儲服務(wù),具有高擴展性、低成本、可靠安全等優(yōu)點。這篇文章主要介紹了Python 轉(zhuǎn)移文件至云對象存儲,需要的朋友可以參考下
    2021-02-02
  • Python使用自定義裝飾器的示例詳解

    Python使用自定義裝飾器的示例詳解

    在Python自動化測試中,可以使用自定義的裝飾器來給測試方法傳遞測試數(shù)據(jù)。本文將通過簡單的示例和大家介紹下具體的使用方法,希望對大家有所幫助
    2022-11-11
  • 淺談Python2、Python3相對路徑、絕對路徑導(dǎo)入方法

    淺談Python2、Python3相對路徑、絕對路徑導(dǎo)入方法

    今天小編就為大家分享一篇淺談Python2、Python3相對路徑、絕對路徑導(dǎo)入方法,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2018-06-06
  • 詳解Python如何檢查一個數(shù)字是否為科技數(shù)

    詳解Python如何檢查一個數(shù)字是否為科技數(shù)

    科技數(shù)(Tech?Number)是一種在數(shù)學(xué)上具有一定特殊性質(zhì)的數(shù)字,這篇文章主要為大家詳細介紹了如何使用Python檢查一個數(shù)字是否為科技數(shù),感興趣的可以了解下
    2024-03-03
  • python Django模板的使用方法(圖文)

    python Django模板的使用方法(圖文)

    模板通常用于產(chǎn)生HTML,但是Django的模板也能產(chǎn)生任何基于文本格式的文檔。
    2013-11-11
  • Python 虛擬環(huán)境venv詳解

    Python 虛擬環(huán)境venv詳解

    Python 虛擬環(huán)境主要是為不同 Python 項目創(chuàng)建一個隔離的環(huán)境,每個項目都可以擁有獨立的依賴包環(huán)境,而項目間的依賴包互不影響,對Python 虛擬環(huán)境venv相關(guān)知識感興趣的朋友一起看看吧
    2021-09-09
  • python切片作為占位符使用實例講解

    python切片作為占位符使用實例講解

    在本篇內(nèi)容里小編給大家分享的是一篇關(guān)于python切片作為占位符使用實例講解內(nèi)容,有興趣的朋友們可以學(xué)習(xí)參考下。
    2021-02-02

最新評論

江城| 新和县| 驻马店市| 名山县| 吉首市| 静宁县| 牡丹江市| 蓬安县| 沙河市| 永城市| 新竹市| 永济市| 桦南县| 武夷山市| 海丰县| 商南县| 土默特右旗| 昭苏县| 托里县| 清河县| 扶风县| 湾仔区| 白城市| 清徐县| 岫岩| 昭觉县| 蓝山县| 庆云县| 文水县| 察雅县| 荥阳市| 宁德市| 科尔| 陆河县| 洮南市| 独山县| 青阳县| 明水县| 绿春县| 鲁山县| 安西县|