我正在编写一个访问数据库的 python 程序。我想在发出 http 请求时捕获三种类型的异常。超时、网络错误和 http 错误。我正在寻找处理这种情况的最佳方法。我需要在代码的多个区域多次检查这些异常,每次都会看起来像这样:
try:
//some request
except timeout:
print '\nException: Timeout Error'
except connection error:
print '\nException: Network Error'
except http error, e:
print 'Exception: %s.' % e
由于我必须多次执行此操作,至少可能 8 次或更多,我是否应该创建一个模块来处理这些异常?另外,在哪种情况下,建议关闭我的系统而不是仅显示消息?
谢谢。
如果你不想使用装饰器,你也可以组合所有的 except 语句,并使用一些函数来处理你的异常(假设你的错误被称为 TimeoutError、ConnectionError 和 HttpError...为了清晰起见,这并不重要) IE。
try:
# do stuff
except (TimeoutError, ConnectionError, HttpError) as e:
handle_exception(e)
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)