Python:RuntimeError是否可以接受以供一般使用?

时间:2015-06-24 19:53:42

标签: python exception

对于一般应用程序使用RuntimeError异常是否可以接受?

raise RuntimeError('config file is missing host address')

我有一些像这样的一次性情况的代码,并且宁愿避免为每个代码创建一次性异常类。所有情况都是致命的,我的目标是向控制台发出明确的信息。基本上我正在寻找类似于已弃用的东西

raise 'config file is missing host address'

1 个答案:

答案 0 :(得分:9)

这是......好的。理想情况下, 会为每个合理不同的情况分别设置异常(例如,对于所有“配置文件格式错误”错误的一个例外,在3.x中为“配置文件”重用FileNotFoundError “存在”等)。但这是一种比较无害的技术债务形式。

缺点是,如果您确实引入了这些单独的异常,则出于向后兼容性的原因,它们可能需要从RuntimeError进行子类化。这有点难看,但大多无害。