我正在尝试向一段代码中添加一些显式异常,但是问题是我拥有Python 3,并且它必须与Python 2.7兼容,并且与Python 3中的ModuleNotFoundError兼容。因此,任何异常都与Python 2.7中的相似?

最佳答案

使用ImportErrorModuleNotFoundErrorImportError的子类,这是一个非常新的类,仅在Python 3.6中才引入。

如果要在可用的情况下使用ModuleNotFoundError,在不可用的情况下使用ImportError,则可以进行功能检查:

try:
    ModuleNotFoundError
except NameError:
    ModuleNotFoundError = ImportError

# later
raise ModuleNotFoundError(whatever_message)

10-08 06:40