定义自定义异常类
创建一个新的类,继承自内置的`Exception`类或其任何子类。
class MyCustomError(Exception):
def __init__(self, message):
self.message = message
抛出自定义异常
使用`raise`关键字抛出自定义异常,并可以传递错误信息。
try:
raise MyCustomError("这是一个自定义异常信息")
except MyCustomError as e:
print(e.message)
异常处理
使用`try`和`except`块来捕获和处理自定义异常。
try:
可能引发异常的代码
raise MyCustomError("这是一个自定义异常信息")
except MyCustomError as e:
处理异常的代码
print(e.message)
自定义异常的详细信息
可以添加更多的属性和方法到自定义异常类中,以提供更多错误信息或执行特定操作。
class MyDetailedError(Exception):
def __init__(self, message, error_code):
super().__init__(message)
self.error_code = error_code
def __str__(self):
return f"MyDetailedError: {self.message}, Error Code: {self.error_code}"
异常的继承层次
可以创建多个自定义异常类,形成继承层次结构,以便在不同的场景下使用。
class BaseError(Exception):
pass
class SpecificError(BaseError):
def __init__(self, message):
super().__init__(message)
通过以上步骤,你可以创建和使用自定义异常来更好地管理和处理程序中的错误情况