admin管理员组文章数量:1566366
- 第一部分引用自“https://www.pynote/archives/1856”,作为引入,可参看原文
在以下代码中,执行后会报出“During handling of the above exception, another exception occurred:”
x = 2
y = 0
try:
result = x / y
except ZeroDivisionError:
raise ValueError('raise in exception clause')
print("=== division by zero!")
else:
print("result is", result)
finally:
raise ValueError('raise in finally clause')
print("executing finally clause")
- 以后部分为原创
“During handling of the above exception, another exception occurred:”是什么意思?
执行下代码,可知是因为后续分支(比如上code中except或finally分支,比如下code中except分支)执行的代码又出错了。
x = 2
y = 0
try:
result = x / y
except ZeroDivisionError:
print('这是第一个except')
result = x / y
输出有:
During handling of the above exception, another exception occurred:
- 处理方法之一:
加入新的try...except...避免该错误,如下:
x = 2
y = 0
try:
result = x / y
except ZeroDivisionError:
try:
print("这是第一个except")
result = x / y
except Exception as e:
print("这是第二个except")
print(repr(e))
顺利执行,不报错“During handling of the above exception, another exception occurred:”,输出为:
这是第一个except
这是第二个except
ZeroDivisionError('division by zero')
本文标签: handlingPythonoccurredException
版权声明:本文标题:python: try except --- During handling of the above exception, another exception occurred 内容由热心网友自发贡献,该文观点仅代表作者本人, 转载请联系作者并注明出处:https://www.elefans.com/xitong/1726227139a1061667.html, 本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容,一经查实,本站将立刻删除。
发表评论