如何在python脚本中使用pip安装软件包?我不使用os.system,我想导入pip并使用它.
Dam*_*sak 17
pip.main()不再适用于pip版本10及更高版本.你需要使用:
from pip._internal import main as pipmain
pipmain(['install', 'package-name'])
Run Code Online (Sandbox Code Playgroud)
为了向后兼容,您可以使用:
try:
from pip import main as pipmain
except ImportError:
from pip._internal import main as pipmain
Run Code Online (Sandbox Code Playgroud)
我认为这些答案已经过时了.事实上你可以这样做:
import pip
failed = pip.main(["install", nameOfPackage])
Run Code Online (Sandbox Code Playgroud)
并在传递给main()的列表中插入任何其他args.它返回0(失败)或1(成功)
乔恩
小智 5
在python脚本中安装软件包并不是一个好主意,因为它需要root权限.您应该在创建脚本的同时发送其他模块,或检查模块是否已安装:
try:
import ModuleName
except ImportError:
print 'Error, Module ModuleName is required'
Run Code Online (Sandbox Code Playgroud)
如果您坚持在脚本中使用pip安装软件包,则必须call从subprocess模块中查看(" os.system()不推荐使用").
没有pip模块,但你可以使用上面的方法轻松创建一个.
小智 5
我使用 os.system 来模拟安装 pip 模块的终端,(我知道 os.system 已弃用,但它仍然有效,而且也是最简单的方法),EG 我正在制作一个游戏引擎,它有多个全部使用 Pygame 的 python 脚本,在启动文件中,如果用户系统没有 pygame,我使用此代码将 pygame 安装到用户系统上:
import os
os.system('pip install pygame')
Run Code Online (Sandbox Code Playgroud)
不幸的是,如果他们没有 pip,我不知道如何安装它,所以这个脚本依赖于 pip。
| 归档时间: |
|
| 查看次数: |
22653 次 |
| 最近记录: |