首页 > 解决方案 > 引发异常时调用方法,在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 多个异常。

如果有人有任何解决方案,请分享。

标签: pythonpython-3.xtry-except

解决方案


你可以试试这个

try:
   print(q)
   a = 8 / 0
except (ZeroDivisionError ,UnboundLocalError, NameError) as err:
   new_method(err)

推荐阅读