使用pip为特定的python版本安装一个模块

在Ubuntu 10.04默认情况下安装了Python 2.6,然后我安装了Python 2.7。 我如何使用pip install来安装Python 2.7的包。

例如:

 pip install beautifulsoup4 

默认安装BeautifulSoup for Python 2.6

当我这样做时:

 import bs4 

在Python 2.6中,它工作,但在Python 2.7中说:

 No module named bs4 

使用针对要安装新软件包的Python实例安装的pip版本。

在许多发行版中,可能会有单独的python2.6-pippython2.7-pip软件包,使用二进制名称(如pip-2.6pip-2.7调用。 如果您的发行版中没有将pip打包为期望的目标,则可以查找setuptools或easyinstall软件包,或使用virtualenv(它始终在生成的环境中包含pip)。

点子的网站包括安装说明 ,如果你不能在你的发行版中find任何东西。

另外,由于pip本身是用python编写的,所以你可以用你想要安装包的python版本来调用它:

 python2.7 /usr/bin/pip install foo 

您可以使用相应的python为特定的python版本执行 pip模块:

Python 2.6:

 python2.6 -m pip install beautifulsoup4 

Python 2.7

 python2.7 -m pip install beautifulsoup4 

你可以使用这个语法

 python_version -m pip install your_package 

例如。 如果您正在运行python3.5,则将其命名为“python3”,并且要安装numpy包

 python3 -m pip install numpy 

在Windows中,您可以通过提及python版本来执行pip模块(您需要确保启动器在您的path上)

py -2 -m pip安装pyfora

Python 2

 sudo pip2 install johnbonjovi 

Python 3

 sudo pip3 install johnbonjovi 

另外,如果你想安装具体版本的Python的特定版本,这是方式

 sudo python2.7 -m pip install pyudev=0.16 

如果“=”不起作用,请使用==

x@ubuntuserv:~$ sudo python2.7 -m pip install pyudev=0.16

无效的要求:'pyudev = 0.16'=不是一个有效的运算符。 你的意思是==?

x@ubuntuserv:~$ sudo python2.7 -m pip install pyudev==0.16

工作正常

如果你已经安装了python的2.7和3.x版本,那么只需将python 3.x版本的python exe文件重命名为“python.exe”到“python3.exe”即可。 现在你可以单独使用两个版本的点子。 如果你通常input“pip install”,默认情况下会考虑2.7版本。 如果你想在3.x版本上安装它,你需要调用命令“python3 -m pip install”。

我在Windows上通过巧克力安装了Python 2.7,并在C:\tools\python2\Scriptsfind了pip2.7.exe

使用这个可执行文件而不是pip命令为我安装了正确的模块( requests Python 2.7)。

我遇到了另外一个叫做Twisted的软件包的类似问题。 我想安装它为Python 2.7,但它只安装了Python 2.6(系统的默认版本)。

做一个简单的改变为我工作。

当把Python 2.7的path添加到你的$PATHvariables中时,将它附加到前面,如下所示: PATH=/usr/local/bin:$PATH ,以便系统使用该版本。

如果你面对更多的问题,你可以按照这个博客文章帮助我 – https://github.com/h2oai/h2o-2/wiki/installing-python-2.7-on-centos-6.3.-follow-this-sequence -exactly换CentOS的机器,只