如何在Python中捕获ImportError异常?

无法导入模块或模块成员时,将引发ImportError。在两种情况下,可能会引发ImportError。

  • 如果模块不存在。

示例

import sys
try:
    from exception import myexception
except Exception as e:
    print e
    print sys.exc_type

输出结果

No module named exception
<type 'exceptions.ImportError'>
  • 如果从X导入Y,并且在模块X内找不到Y,则会引发ImportError。

示例

 import sys
 try:
    from time import datetime
 except Exception as e:
    print e
    print sys.exc_type

输出值

 cannot import name datetime
<type 'exceptions.ImportError'>