簡體   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