我的项目中有这些文件:
- main.py
- module1.py
- module2.py
Run Code Online (Sandbox Code Playgroud)
main 是将在控制台中直接执行的主文件.
module1将被导入main和抛出Module1Exception.
module2将被导入module1,抛出Module2Exception
并使用抛出NormalException和CriticalException异常的库.
在所有异常应用程序应退出.
哪个选项是捕获这些错误的最有效方法?
a)所有异常都将被捕获main,打印消息和退出
b)允许模块捕获异常(module2捕获lib异常,module1仅捕获Module2Exception和main捕获Module1Exception),打印消息并退出.
c)与b一样,除了模块不会退出,而是返回False并调用exitmain
编辑:
这将是服务器端应用程序,作为守护进程运行.我希望将来我会使用多个具有全局日志监控功能的服务器,如水槽或抄写员.必须抓住例外情况.这些文件只是示例.事实上,我正在编写一个大型应用程序,它充当一种服务器.在这一刻我写了加载和解析配置文件的模块.在这种情况下,如果引发任何异常,脚本应该退出.只有在这种情况下.加载配置文件并通过测试后,脚本将无人值守.