【发布时间】:2012-07-23 15:23:34
【问题描述】:
我正在 python 中创建一个包,它有一些可选的依赖项。核心功能不需要这些依赖项,但缺少它们会禁用某些类(它是一个提供用于存储 html 的字段的 orm。lxml 用于存储和检索值)。
显然,如果无法导入依赖项,我可能不会创建类。但这可能会让用户感到困惑,因为他得到“模块 x 没有属性 y”,这不是真正的问题。
如果有人想要导入或使用一个类,有什么方法可以发出有意义的错误消息(我也在考虑创建一个带有__getattribute__ 引发错误的类)。有什么推荐的方法吗?一些有趣的方式是在一些高质量的包中完成的?
【问题讨论】:
标签: python exception import dependencies