pip.main安装失败,因为“模块”对象没有属性“主”

Sag*_*rla 3 python pip python-2.7

我正在尝试从python脚本中安装一些python软件包,pip.main(install)为此我正在使用。下面是代码片段

try:
    import requests
except:
    import pip
    pip.main(['install', '-q', 'requests==2.0.1','PyYAML==3.11'])
    import requests
Run Code Online (Sandbox Code Playgroud)

我尝试使用从pip._internal导入main并使用pipmain代替pip.main(),但是它没有帮助。

我在pip version 9.0.1python 2.7

小智 5

pip开发人员不建议从程序内部调用pip。并且pip.main()方法已从pip v10中删除。作为一种替代方法,建议在子进程中执行pip。

https://pip.pypa.io/zh_CN/stable/user_guide/?highlight=_internal#using-pip-from-your-program

try:
    import requests
except:
    import sys
    import subprocess
    subprocess.check_call([sys.executable, '-m', 'pip', 'install', 'requests==2.0.1', 'PyYAML==3.11'])
    import requests
Run Code Online (Sandbox Code Playgroud)