Python程序导入

示例

Python 2.x 2.7

要通过函数调用导入模块,请使用该importlib模块(自2.7版开始包含在Python中):

import importlib
random = importlib.import_module("random")

该函数还将直接导入包的子模块:importlib.import_module()

collections_abc = importlib.import_module("collections.abc")

对于旧版本的Python,请使用imp模块。

Python 2.x 2.7

使用功能imp.find_module并imp.load_module执行程序化导入。

取自标准库文档

import imp, sys
def import_module(name):
    fp, pathname, description = imp.find_module(name)
    try:
        return imp.load_module(name, fp, pathname, description)
    finally:
        if fp:
            fp.close()

千万不要使用__import__()以编程方式导入模块!有涉及sys.modules,fromlist参数等的细微细节,这些细节很容易为您处理。importlib.import_module()