python 中出现错误时如何运行函数

Bag*_*ter 2 python

我有一个名为 的函数onError()。当它运行时,它会打印"There was an error"

我希望这个函数在发生错误时运行,例如,如果我 raise NameError,该函数就会运行。

这是我的代码

def onError():
    print("There was an error")

raise NameError
Run Code Online (Sandbox Code Playgroud)

我知道 try 和 except 存在,但我想要一种没有它们的方法。

小智 6

您可以通过重写来定义“全局”异常处理程序sys.excepthook

这是一个例子。

import sys

def onError(exception_type, value, traceback):
    print("There was an error")

sys.excepthook = onError
Run Code Online (Sandbox Code Playgroud)