Python - 捕获错误的好习惯

Gal*_*lmi 8 python

我的项目中有这些文件:

- main.py
- module1.py
- module2.py
Run Code Online (Sandbox Code Playgroud)

main 是将在控制台中直接执行的主文件.

module1将被导入main和抛出Module1Exception.

module2将被导入module1,抛出Module2Exception 并使用抛出NormalExceptionCriticalException异常的库.

在所有异常应用程序应退出.

哪个选项是捕获这些错误的最有效方法?
a)所有异常都将被捕获main,打印消息和退出
b)允许模块捕获异常(module2捕获lib异常,module1仅捕获Module2Exceptionmain捕获Module1Exception),打印消息并退出.
c)b一样,除了模块不会退出,而是返回False并调用exitmain

编辑:

这将是服务器端应用程序,作为守护进程运行.我希望将来我会使用多个具有全局日志监控功能的服务器,如水槽或抄写员.必须抓住例外情况.这些文件只是示例.事实上,我正在编写一个大型应用程序,它充当一种服务器.在这一刻我写了加载和解析配置文件的模块.在这种情况下,如果引发任何异常,脚本应该退出.只有在这种情况下.加载配置文件并通过测试后,脚本将无人值守.

Dem*_*cht 14

main 应该有责任终止,而不是模块.

如果你想这些模块导入到另一个项目,你希望终止对异常应用?