python - 引发异常时调用方法,在try块之后列出了多个异常
问题描述
嗨,我有代码,在尝试块之后有多个异常块,我想在发生任何异常时调用特定方法。我不想在每个异常中都调用我的方法。
这是我的代码示例
try:
print(q)
a = 8 / 0
except ZeroDivisionError as z_err:
new_method(z_err)
# it's logger operation
except UnboundLocalError as ub_err:
new_method(ub_err)
# it's logger operation
except NameError as err:
new_method(err)
# no log operation.
except customException1 as err:
new_method(err)
# log 2 method
基本上我的方法需要异常作为参数。在某些例外情况下,我必须执行某些特定类型的日志操作。并非所有异常都有记录器操作。
我不想在每个异常中都调用此方法,因为我列出了 10 多个异常。
如果有人有任何解决方案,请分享。
解决方案
你可以试试这个
try:
print(q)
a = 8 / 0
except (ZeroDivisionError ,UnboundLocalError, NameError) as err:
new_method(err)
推荐阅读
- sql - 尝试在 HIVE 中使用 SQL 子查询找到解决方案
- azure - 当前迭代查询脚本 Devops 循环通过项目
- javascript - 有人可以告诉我我的 Redux 状态有什么问题吗?
- gitlab - 将 Yaml 从 GitLab 转换为 azure devops
- reactjs - firestoreConnect 不会将集合映射到 react-redux-firebase 中的状态
- ruby-on-rails - Ruby 或 Rails 中是否有一组内置的默认日期范围?
- apache-spark - 用于长时间运行进程的 Spark 事件日志
- android - 我的 android 应用在手机上看起来与 android studio 不同
- css - 通过 Web Animations API 应用的“will-change”会产生预期的效果吗?
- spring-boot - 如何在 Spring Boot 项目和 PostgresSQL DB 之间建立连接