解析python使用者自定義異常例項
導讀 | 在本篇文章裡小編給大家整理的是一篇關於python使用者自定義異常的例項講解,以後需要的朋友們可以跟著學習參考下。 |
說明
1、程式可以透過建立一個新的異常類來命名它們自己的異常。異常應該是典型的繼承自Exception類,直接或間接的方式。
2、異常python有一個大基類,繼承了Exception。因此,我們的定製類也必須繼承Exception。
例項
class ShortInputException(Exception): def __init__(self, length, atleast): self.length = length self.atleast = atleast def main(): try: s = input('請輸入 --> ') if len(s) < 3: # raise引發一個你定義的異常 raise ShortInputException(len(s), 3) except ShortInputException as result:#x這個變數被繫結到了錯誤的例項 print('ShortInputException: 輸入的長度是 %d,長度至少應是 %d'% (result.length, result.atleast)) else: print('沒有異常發生') main()
知識點擴充套件:
自定義異常型別
#1.使用者自定義異常型別,只要該類繼承了Exception類即可,至於類的主題內容使用者自定義,可參考官方異常類 class TooLongExceptin(Exception): "this is user's Exception for check the length of name " def __init__(self,leng): self.leng = leng def __str__(self): print("姓名長度是"+str(self.leng)+",超過長度了")
捕捉使用者手動丟擲的異常
#1.捕捉使用者手動丟擲的異常,跟捕捉系統異常方式一樣 def name_Test(): try: name = input("enter your naem:") if len(name)>4: raise TooLongExceptin(len(name)) else : print(name) except TooLongExceptin,e_result: #這裡異常型別是使用者自定義的 print("捕捉到異常了") print("列印異常資訊:",e_result) #呼叫函式,執行 name_Test() ==========執行結果如下:================================================== enter your naem:aaafsdf 捕捉到異常了 Traceback (most recent call last): 列印異常資訊: 姓名長度是7,超過長度了 姓名長度是7,超過長度了 File "D:/pythoyworkspace/file_demo/Class_Demo/extion_demo.py", line 16, in name_Test raise TooLongExceptin(len(name)) __main__.TooLongExceptin:During handling of the above exception, another exception occurred: Traceback (most recent call last): File "D:/pythoyworkspace/file_demo/Class_Demo/extion_demo.py", line 26, inname_Test() File "D:/pythoyworkspace/file_demo/Class_Demo/extion_demo.py", line 22, in name_Test print("列印異常資訊:",e_result) TypeError: __str__ returned non-string (type NoneType)
以上就是python使用者自定義異常的例項講解的詳細內容。
原文來自:
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/69955379/viewspace-2786917/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- java自定義異常例項1Java
- 使用者自定義異常
- C++類和異常例子C++
- python自定義異常,使用raise引發異常PythonAI
- 自定義異常
- 自定義異常類
- Java自定義異常Java
- 自定義異常三
- Java 異常(二) 自定義異常Java
- Java之自定義異常Java
- 自定義PL/SQL異常SQL
- 自定義監控項
- pyhanlp使用者自定義詞典新增例項說明HanLP
- restframework 異常處理及自定義異常RESTFramework
- springboot自定義異常Spring Boot
- Java的自定義異常類Java
- java培訓教程分享:Java中使用者如何自定義異常?Java
- [2]自定義Lua解析方式
- 【Django】DRF自定義異常處理Django
- C#中自定義異常類C#
- Oracle自定義異常的使用薦Oracle
- Python自定義排序Python排序
- tmux自定義使用者設定(滑鼠選項,複製貼上)UX
- Prometheus Operator自定義監控項Prometheus
- C#規範整理·異常與自定義異常C#
- 異常-自定義異常的實現和測試
- C#自定義異常 統一異常處理C#
- 自定義UDF函式應用異常函式
- python 自定義函式Python函式
- 深入解析Vue.directive 自定義指令Vue
- mybatis自定義List集合解析器MyBatis
- Flex Viewer 解析(四)自定義WidgetFlexView
- 遠端桌面 解析度自定義
- openfire使用自定義使用者表
- Avalonia的自定義使用者元件元件
- 自定義 Windows 右鍵選單項Windows
- Android自定義View注意事項AndroidView
- 【例項】PowerQuery的自定義日曆