簡體   English   中英

使用 Python 中的 pip 模塊安裝模塊

[英]Use pip module from Python to install modules

我的目標是使用 Python 3.6 代碼中的pip模塊來安裝新的 Python 模塊。 但是,我似乎無法找出調用實例化和調用pip.commands.InstallCommand()實例的正確步驟。

這是我迄今為止嘗試過的:

import pip
inst = pip.commands.InstallCommand()
inst.name = 'boto3'
inst.run()

我什至不確定這是否是調用InstallCommand類的正確方法。 運行上面的代碼時,我得到的錯誤是:

回溯(最近一次調用):文件“”,第 1 行,在 TypeError 中:run() 缺少 2 個必需的位置參數:“options”和“args”

不過,我不確定要為optionsargs傳遞什么。

問題:有誰知道 pip InstallCommand的正確調用是什么樣的?

從腳本pip install的唯一支持的方法是通過子進程。 請參閱從程序中使用 pip文檔中的部分:

pip是一個命令行程序。 雖然它是在 Python 中實現的,因此可以通過import pip從你的 Python 代碼中獲得,但你不能以這種方式使用 pip 的內部 API。 ...最可靠的方法,也是完全支持的方法,是在子進程中運行 pip。 這可以使用標准的子流程模塊輕松完成。

使用sys.executable確保您針對當前運行時的正確 pip:

import subprocess, sys
subprocess.check_call([sys.executable, '-m', 'pip', 'install', 'boto3'])

根據https://packaging.python.org/tutorials/installing-packages/

您可以在命令提示符下使用安裝任何軟件包:pip install 'SomeProject'

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM