【问题标题】:How to run pip of different version of python using python command?如何使用 python 命令运行不同版本的 python 的 pip?
【发布时间】:2016-04-20 13:45:12
【问题描述】:

我现在在 ubuntu 15.10 上使用 Python

但在我的操作系统中,我安装了许多不同的 python 版本:

  • Python (2.7.9)
  • Python3 (3.4.3)
  • Python3.5
  • PyPy

所以,我对他们的包环境的版本一无所知,例如,如果我运行:

pip3 install django

实际上我无法在python3.5 中导入django。

有没有有效的方法来调用pip的相关版本?

PS:不建议我使用 virtualenv,我知道它并正在寻找其他解决方案。

【问题讨论】:

  • 你为什么不使用 virtualenv?它旨在解决这个确切的问题。
  • 运行pip3 -V 并查看它指向的位置。您还应该为Py3.5 提供pip3.5
  • @OdraEncoded:谢谢,我自己有答案了。
  • 没有,您可能希望修复答案中的链接。
  • 谢谢,我已将链接更改为更合适的部分。

标签: python python-3.x pip pypi pypy


【解决方案1】:

最后我自己找到了解决方案,请参阅文档:

https://docs.python.org/3/installing/index.html?highlight=pip#work-with-multiple-versions-of-python-installed-in-parallel

只要打电话:

pythonXX -m pip install SomePackage

这对于每个已安装的 python 版本都可以单独工作。

另外,根据文档,如果我们想在 windows 中做同样的事情,命令有点不同:

py -2   -m pip install SomePackage  # default Python 2
py -2.7 -m pip install SomePackage  # specifically Python 2.7
py -3   -m pip install SomePackage  # default Python 3
py -3.4 -m pip install SomePackage  # specifically Python 3.4

【讨论】:

  • windows:py -3 -m pip install SomePackage在64位安装最新3版本py -3.6-32 -m pip install SomePackage在32字节版本上安装模块
  • 其实因为pip是python脚本,它是由python解释的,所以不用选项'-m'也能正常工作,比如pythonXX /usr/bin/pip install <somepackage>,如果你不知道@987654327的路径@,用which找,像这样pythonXX `which pip` install <somepackage>
  • @Bananach 不,它没有。因为您也不需要记住 pip 版本。您使用的是/usr/bin/pipwhich pip。里面没有版本。
【解决方案2】:

pyenv怎么样?

你可以切换版本。

$ pyenv install 2.7.X
$ pyenv install 3.5.X
$ pyenv local 2.7.X
$ pyenv global 3.5.X

【讨论】:

    【解决方案3】:

    这个解决方案对我有用:

    sudo python2.7 -m pip install [package name]
    

    【讨论】:

    • 也为我工作。非常感谢
    • sudo pip install 不是好习惯,因为这会破坏您的发行版在 Linux 上的 Python 依赖关系。
    • 破坏者?否则同意 sudo 的使用应该受到限制。
    【解决方案4】:

    为什么不使用 anaconda?

    如果您使用conda,您可以轻松创建/管理虚拟环境。例如,如果你有root env python 3.4 和py27 env for python 2.7,你可以使用命令source activate [env]在它们之间轻松切换

    source activate py27
    conda install SomePackage
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2017-10-11
      • 1970-01-01
      • 1970-01-01
      • 2018-02-12
      • 1970-01-01
      • 2011-05-26
      • 1970-01-01
      相关资源
      最近更新 更多