python - python - 是否可以捕获和处理库引发的异常?
问题描述
我正在使用外部库,在 HTTPError 的情况下会引发异常:
if r.status_code != 200:
raise HTTPError(r.text)
我想以某种方式在我的代码中处理此异常,以一种不会破坏脚本执行但记录错误并继续的方式。是否可以不更改外部库本身?就像是:
except: HTTPError as e:
...
pass
我想覆盖最初在库中处理异常的方式。
解决方案
是的,您可以发现错误
class HTTPError(Exception):
pass
try:
# suppose you are doing some action that raises HTTPError
raise HTTPError()
except HTTPError as e:
# catch the error
print('http error')
finally:
print('closing')
http error
closing
请记住,您需要导入非标准异常类。
推荐阅读
- python - 生成两个平方和 ==1 的随机数
- javascript - 没有相同值的依赖列表
- sql - ORACLE SQL Trim 对正则表达式无效
- javascript - React js 状态更新
- javascript - 如何在 v-app 外部单击时关闭 v-select?
- python - TensorFlow 中的显式与隐式类型定义
- angular - of(true) 方法在 Angular 7 中有什么作用?
- python - python队列与队列?
- dart - 未处理的异常:键入“列表”
' 不是类型 'Map 的子类型 ' - django - 从 celery_beat 中删除项目不会将它们从数据库计划中删除