Python:具有嵌入式错误处理例程的自定义异常?

时间:2016-06-19 02:14:53

标签: python

在嵌入特殊错误处理/日志记录系统的情况下实现自己的异常是一个坏主意吗?我希望将我的一些错误处理内容集中在一个地方。

例如:

errors.py

class ReallyBadException(Exception):
    def __init__(self, msg, error_handling):
        super(Exception, self).__init__(msg)
        ...
        error_handling.logger.error(msg)
        error_handling.db.do_stuff(msg)
        call_the_police()
        ...

显然我知道我仍然需要在main函数等本地处理异常

main.py

from errors import ReallyBadException, NotSoBadException, ...
...  
try: 
    do_something()
except RellyBadException:
    do_another_thing()

1 个答案:

答案 0 :(得分:0)

简单地说,这根本不是一个坏主意。

事实上,我看待它的方式,你正在尝试做的最终是编程语言首先处理异常的原因。