如何在脚本中安装库并导入它?

How can I install a library in script as well as importing it?

我想在脚本中测试是否安装了所有必需的库,如果没有,请安装它。这是我的代码:

libs = ['lib1','lib2','lib3']
def import_m(name):
    try:
        import name 
    except:
        pip.main(['install',name])
        import name                    #look at this line
for i in libs:
        import_m(i)
print("Done importing %s." % i)

但是当 运行 它引发了一个执行:

ImportError: No module named name

此执行中提到的行由注释指示。

我该如何解决?

你将需要

importlib

此功能。

回答了类似的问题

根据您的要求,您可以先尝试使用

导入库

globals()['module_name'] = importlib.import_module('module_name')

如果它抛出异常,您只需要安装它并再次 运行 上面的代码。不要再尝试 运行 import module_name 了。如果 module_name 成功存储在全局变量中,你就可以开始了。