gpt4 book ai didi

python - 如何处理 except 子句中引发的异常

转载 作者:行者123 更新时间:2023-11-28 22:25:40 27 4
gpt4 key购买 nike

假设你有这样的 flask api 代码:

@app.route('/doing/foo')
def foo():
try:
...
except Exception as ex:
doing some stuff

现在 做一些事情 不小心抛出了另一个异常。如何防止服务器在不知道发生了什么的情况下显示另一个一般的内部服务器错误?
换句话说,我如何捕获可能源自 except 子句的异常?

最佳答案

啊哈!这是一个 100 年的问题。

第一个选择是迁移到 Python 3。

Python 3 具有异常链接,并将打印两种异常 - 一种正在处理,另一种由于处理不当而抛出。

第二种选择是自己实现异常链:

使用当前 except: 中的另一个 try-except 子句手动将新异常注入(inject)到正在处理的异常中。

请记住它导致循环引用。由于这是一次性异常,我不会费心去处理它。进一步使用此方法将需要使用 traceback.clear_frames() 清理回溯。

关于python - 如何处理 except 子句中引发的异常,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45387525/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com