Python异常处理最佳实践

2024-10-01 13:36:45 发布

您现在位置:Python中文网/ 问答频道 /正文

我正在写一个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次或更多次,我是否应该创建一个模块来处理这些异常?另外,在这些情况下,关闭我的系统而不是仅仅显示一条消息是明智的吗?在

谢谢。在


Tags: 方法代码程序网络数据库http区域类型
1条回答
网友
1楼 · 发布于 2024-10-01 13:36:45

如果您不想使用decorator,您还可以组合所有的except语句,并使用一些函数来处理异常(假设您的错误被称为TimeoutError、ConnectionError和HttpError…对于清晰性来说并不重要),也就是说

try:
   # do stuff
except (TimeoutError, ConnectionError, HttpError) as e:
   handle_exception(e)

相关问题 更多 >