当某些模块无法导入时,是否有关于库应该如何表现的标准实践?它应该让异常飞走还是应该捕获它并使用适当的信息优雅地退出?
例如我有这样的东西:
try:
from argparse import ArgumentParser
except ImportError:
print('fathom library requires python 3.2 or argparse package.')
是好是坏?
请您参考如下方法:
一个库应该总是引发一个ImportError 而不是退出;程序可能希望有条件地包含它(可能在它不可用时替换它)。
如果较低级别的模块引发 ImportError,您最好的办法是重新引发它并附加额外信息。
