繁体   English   中英

在代码中一次安装和导入多个 Python 库

[英]Installing and importing several Python libraries at once within code

我发现下面的这段代码在 Python 中安装了缺失的库。 如果我有几个这样的必需库,我该如何调整它以使其全部通过?

import subprocess
import sys
import pkg_resources

try:
    import pyLibrary
except ImportError:
    subprocess.call([sys.executable, "-m", "pip", "install", 'pyLibrary'])
finally:
    import pyLibrary

当我尝试以下操作时没有收到错误消息:

import subprocess
import sys
import pkg_resources

required = {'pyLibrary', 'functools', 'operator', 'UserString'}
installed = {pkg.key for pkg in pkg_resources.working_set}
missing = required - installed

try:
    modules = map(__import__, list(required))
except ImportError:
    subprocess.call([sys.executable, "-m", "pip", "install", *missing])
finally:
    modules1 = map(__import__, list(required))

但是,当我检查是否使用此代码导入或安装了软件包时:

import sys
modulenames = set(sys.modules) & set(globals())
allmodules = [sys.modules[name] for name in modulenames]

没有安装或导入

这应该做的工作

try:
    from pip import main as pipmain
except ImportError:
    from pip._internal import main as pipmain

required = ['pyLibrary', 'mutagen', 'tokenize']
for i in required:
    pipmain(['install', i])

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM