Python 中的 raise
关键字用于手动触发异常。它可以重新抛出当前捕获的异常,或主动引发新的异常。raise
允许程序在检测到错误条件时立即报告,而不是继续执行可能基于错误状态的代码。这有助于提早发现和处理错误,提高程序的稳定性和可维护性。raise
也可用于测试异常处理代码,是异常处理机制的重要组成部分。
class Networkerror(RuntimeError):
def __init__(self, **kwargs):
self.kwargs = kwargs
self.action()
def action(self):
# 这里可以写入日志等操作
print(self.kwargs)
def first():
try:
second()
except Networkerror as e:
# "这里可以传递错误获取second()错误信息,可以返回到前端"
print (e.kwargs)
def second():
if "xxx" not in data: # 主动抛出错误 raise
raise Networkerror(code=400, message="second_err")
# 这里是message自定义的错误,不要用系统的
if __name__ == "__main__":
first()