可以通过继承 Exception 类来编写自定义的异常类。以下是一个示例:
class MyException(Exception):
def __init__(self, error_code, error_message):
self.error_code = error_code
self.error_message = error_message
super().__init__(self.error_message)
在上面的示例中,MyException 类继承自 Exception 类,并通过重写 init() 方法来添加自定义的属性 error_code 和 error_message。在构造函数中,通过调用父类的 init() 方法来传递异常消息给 Exception 类,以便异常信息可以被捕获和处理。
使用时,可以像使用其他异常类一样使用自定义的异常类:
try:
# 某些代码逻辑
raise MyException(1001, "自定义异常")
except MyException as e:
print(f"错误代码:{e.error_code}")
print(f"错误信息:{e.error_message}")
在上面的代码中,通过 raise 关键字抛出自定义异常对象,并在 except 块中捕获自定义异常并打印错误代码和错误信息。