Python自定義異常
在程式中可以通過建立新的異常型別來命名自己的異常。異常類通常應該直接或間接的從Exception 類派生,例如:
>>> class MyError(Exception): ... def __init__(self, value): ... self.value = value ... def __str__(self): ... return repr(self.value) ... >>> try: ... raise MyError(2*2) ... except MyError, e: ... print 'My exception occurred, value:', e.value... My exception occurred, value: 4 >>> raise MyError, 'oops!' Traceback (most recent call last): File "<stdin>", line 1, in ? __main__.MyError: 'oops!'
異常類中可以定義任何其它類中可以定義的東西,但是通常為了保持簡單,只在其中加入幾個屬性資訊,以供異常處理控制代碼提取。如果一個新建立的模組中需要丟擲幾種不同的錯誤時,一個通常的作法是為該模組定義一個異常基類,然後針對不同的錯誤型別派生出對應的異常子類。
class Error(Exception):"""Base class for exceptions in this module.""" pass class InputError(Error): """Exception raised for errors in the input. Attributes: expression -- input expression in which the error occurred message -- explanation of the error """ def __init__(self, expression, message):self.expression = expression self.message = message class TransitionError(Error): """Raised when an operation attempts a state transition that's not allowed. Attributes: previous -- state at beginning of transition next -- attempted new state message -- explanation of why the specific transition is not allowed """ def __init__(self, previous, next, message): self.previous = previous self.next = next self.message = message
與標準異常相似,大多數異常的命名都以“Error”結尾。
很多標準模組中都定義了自己的異常,用以報告在他們所定義的函式中可能發生的錯誤。關於類的進一步資訊請參見第 9章,“類”。
相關推薦
python自定義異常,使用raise引發異常
value init tom 輸入 mar pri Coding pre lis 1.自定義異常類,自定義的異常類必須是Exception或者Error的子類! 1 #!/usr/bin/env python 2 # encoding: utf-8 3 4 cl
python自定義異常和主動拋出異常
clas 如何 pri 就是 int 異常 類繼承 def try python自定義異常和主動拋出異常 #知識點:如何自定義類 class MyException(Exception): #讓MyException類繼承Excepti
python 自定義異常
class CustomException(exceptions.Exception): def __init__(self, error_info): Exception.__init__(self, error_info) self.error = error_info def __s
Python自定義異常及丟擲異常
1 """ 2 自定義異常 3 """ 4 class MyException(Exception): # 繼承異常類 5 def __init__(self, name, reason): 6 self.name = name 7
python自定義異常和主動丟擲異常(raise)
前言 有時候python自帶異常不夠用,如同java,python也可以自定義異常,並且可以手動丟擲。注意,自定義異常只能由自己丟擲。python直譯器是不知道使用者自定義異常是什麼鬼的。 raise語句 主動丟擲異常。 格式: 主動丟擲異常終止程
Python自定義異常
在程式中可以通過建立新的異常型別來命名自己的異常。異常類通常應該直接或間接的從Exception 類派生,例如: >>> class MyError(Exception): ... def __init__(self, value): ... self.value
Python----面向對象---自定義異常類型
def char user ise init rec post body ... 面向對象---自定義異常類型 1 class MyException(BaseException): 2 def __init__(self, msg): 3
python通過自定義異常,提前退出方法
def spot(waitByTime30,waitByTime1): try: elm = waitByTime1.until(lambda x: x.find_element_by_name("captcha")) print(elm) exc
Python中自定義異常與丟擲異常
# class ShortInputException(Exception): # def __init__(self,length,atleast): # super().__init__() # self.length = length #
Python中自定義異常
class ShortInputException(Exception): def __init__(self,length,atleast): super().__init__() self.length = length self.atle
Python:使用者自定義異常
實際開發中,有時候系統提供的異常型別不能滿足開發的需求。這時候你可以通過建立一個新的異常類來擁有自己的異常。異常類繼承自 Exception 類,可以直接繼承,或者間接繼承。 1.自定義異常型別 #1.使用者自定義異常型別,只要該類繼承了Exception類即可,至於類的主題內容使用者自
python-reraise重新丟擲自定義異常——如何使traceback選擇性保留?
1. 自定義異常 在python中,自定義一個異常類的方法如下: 新建一個python檔案exception.py,以後可以將該工程內的所有自定義異常類都寫到該檔案下。程式碼如下: """ 自定義異常類 """ # 引數型別異常類 class ParameterTypeE
Python Flask,捕獲異常,捕獲404錯誤,errorhandler(),自定義異常處理函式
demo.py(捕獲異常,自定義異常處理函式): # coding:utf-8 from flask import Flask app = Flask(__name__) # 捕獲404異常錯誤 @app.errorhandler(404) # 當發生404錯誤時,會被
Python基礎筆記_Day13_Python檔案讀寫IO、異常、自定義異常
Day13_Python檔案讀寫IO、異常、自定義異常 13.01_Python語言基礎(檔案概述)(熟練) 13.02_Python語言基礎(檔案開啟關閉)(掌握) 13.03_Python語言基礎(檔案的讀寫)(掌握) 13.04_Python語言基礎(製作檔案的備份)(掌握) 13
Python實戰之常見異常以及自定義異常
異常種類 python中的異常種類非常多,每個異常專門用於處理某一項異常!!! 常用異常 AttributeError #試圖訪問一個物件沒有的屬性,比如foo.x,但是foo沒有屬性x IOError #輸入/輸出異常;基本上是無法開啟檔案 Impor
Python高手系列:自定義異常類(帶寫入日誌功能)
class MYException(Exception): def __init__(self,Message): Exception.__init__(self) self.__str__=Message def WriteLog(s
Java自定義異常
trace tex logs fin rate cat java自定義異常 leg pan package cn.Douzi.Lab7_4; public class Triangle { int a, b, c; publ
Object類-try-catch-finally-throw-throws-自定義異常
pre 類繼承 輸入 解決 uil pri nat check run 一.Object類 Object類是最頂端的類,其它類都是它的子類,它的方法可以被繼承.如果定義的類沒有繼承別的類,那它的直接父類就是Object.如果方法參數類型為object類型, 則調用方
自定義異常
sum tom 什麽是 -c 創建 聲明 自定義 void main 一:什麽是自定義異常 自定義異常就是自己定義的異常類,也就是Exception直接或間接的子類。 二:怎麽使用自定義異常 (1)創建自定義異常類 (2)在方法中通過throw 關鍵字拋出自定義異常 (3)
異常-自定義異常的實現和測試
trace message alt exc 異常 runt stack com code 1 考試成績必須在0-100之間 2 很明顯java沒有對應的異常,需要我們自己來做一個異常 3 自定義異常 4 繼承自Exception 5 繼承自RuntimeExce