有没有办法让pip在多个版本的Python中都能很好地运行?例如,我想使用pip显式地将东西安装到我的站点2.5安装或站点2.6安装中。

例如,对于easy_install,我使用easy_install-2.{5,6}。

是的,我知道virtualenv,不,它不是这个特殊问题的解决方案。


当前回答

例如,您可以转到C:\Python2.7\Scripts,然后从该路径运行cmd。然后你可以运行pip2.7安装你的包…

这将为该版本的Python安装包。

其他回答

我默认安装了python 2.6 (Amazon EC2 AMI),但我的应用程序需要python2.7加上一些外部包。假设您已经安装了python2.7和默认的python(在我的例子中是2.6)。下面是如何为非默认的python2.7安装pip和包

为你的python版本安装pip:

curl -O https://bootstrap.pypa.io/get-pip.py
python27 get-pip.py

使用指定的pip版本安装软件包:

pip2.7 install mysql-connector-python --allow-external mysql-connector-python

在Linux、Mac OS X和其他POSIX系统上,使用带版本控制的Python命令和-m开关来运行pip的适当副本:

python2.7 -m pip install SomePackage
python3.4 -m pip install SomePackage

(也可以使用版本适当的PIP命令)

在Windows上,将py Python启动器与-m开关结合使用:

py -2.7 -m pip install SomePackage  # specifically Python 2.7
py -3.4 -m pip install SomePackage  # specifically Python 3.4

如果py -3.4有错误,那么试试:

pip install SomePackage

您可以使用以下命令之一:

pip2 install SomePackage
pip3 install SomePackage

python2 -m pip install SomePackage  
python3 -m pip install SomePackage 

当然,还要确保安装了正确的pip版本

sudo apt-get install python-pip
sudo apt-get install python3-pip

我自己没有使用过这些命令,但是上面的一些回答建议使用它们来指定你想使用的python版本

pip-2.7 install SomePackage
python-3.6 -m pip install SomePackage

其他答案展示了如何将pip与两者一起使用。X和3。X Python,但没有说明如何处理多个Python发行版的情况(例如。原始Python和Anaconda Python)。

我总共有3个Python版本:原始Python 2.7和Python 3.5和Anaconda Python 3.5。

下面是我如何安装一个包到:

原始Python 3.5: /usr/bin/python3 -m PIP安装python-daemon 原始Python 2.7: /usr/bin/python -m PIP安装python-daemon 蟒蛇3.5: Python3 -m PIP安装python-daemon 或 Pip3安装python-daemon 更简单,因为Anaconda在用户环境中覆盖原始的Python二进制文件。 当然,安装在anaconda应该用conda命令来完成,这只是一个例子。


另外,确保为特定的python安装了pip。您可能需要手动安装pip。这适用于Ubuntu 16.04:

sudo apt-get install python-pip 

or

sudo apt-get install python3-pip

目前建议使用python -m pip,其中python是您想使用的python版本。这是推荐的,因为它适用于所有版本的Python和所有形式的virtualenv。例如:

# The system default python:
$ python -m pip install fish

# A virtualenv's python:
$ .env/bin/python -m pip install fish

# A specific version of python:
$ python-3.6 -m pip install fish

之前的答案,留给后人:

从0.8版本开始,Pip支持Pip -{version}。你可以像easy_install-{version}一样使用它:

$ pip-2.5 install myfoopackage
$ pip-2.6 install otherpackage
$ pip-2.7 install mybarpackage

编辑:在1.5版中,pip将其模式更改为使用pipVERSION而不是pip- version。如果你的pip >= 1.5,你应该使用以下命令:

$ pip2.6 install otherpackage
$ pip2.7 install mybarpackage

更多详情请登录https://github.com/pypa/pip/pull/1053


引用:

https://github.com/pypa/pip/issues/200 http://www.pip-installer.org/docs/pip/en/0.8.3/news.html#id4 https://pip.pypa.io/en/stable/news/ v0-8或 https://web.archive.org/web/20140310013920/http://www.pip-installer.org:80/docs/pip/en/0.8.3/news.html#id4