当我的计算机上有Python2、Python3和Anaconda时,如何控制pip安装包的Python发行版?

当我的计算机上有Python2、Python3和Anaconda时,如何控制pip安装包的Python发行版?,python,python-2.7,python-3.x,pip,anaconda,Python,Python 2.7,Python 3.x,Pip,Anaconda,我的Windows计算机上安装了以下Python发行版: Python 2.7(空闲) Python 3.4(空闲) 蟒蛇(Python 3.4) 显然,它们都将其库存储在不同的位置 那么,我如何在每次需要时轻松地对其中一个进行定向安装 例如,现在我正在尝试将pytz安装到Python 3.4(空闲),而pip安装似乎默认为Python 2.7(空闲),这是我在计算机上安装的Python的第一个发行版。Anaconda Python 如果您安装了anacondapython,它可能会覆盖py

我的Windows计算机上安装了以下Python发行版:

  • Python 2.7(空闲)
  • Python 3.4(空闲)
  • 蟒蛇(Python 3.4)
显然,它们都将其库存储在不同的位置

那么,我如何在每次需要时轻松地对其中一个进行定向安装


例如,现在我正在尝试将
pytz
安装到Python 3.4(空闲),而
pip安装似乎默认为Python 2.7(空闲),这是我在计算机上安装的Python的第一个发行版。

Anaconda Python

如果您安装了anacondapython,它可能会覆盖python命令,以指向Anaconda解释器作为默认值,pip也是如此。在这种情况下,通过
pip
命令安装的所有库都将安装在Anaconda python库路径下:

$ which python
/home/datafireball/anaconda/bin/python
$ which pip
/home/datafireball/anaconda/bin/pip
$ cat /home/datafireball/anaconda/bin/pip
#!/home/datafireball/anaconda/bin/python
if __name__ == '__main__':
    import sys
    from pip import main
sys.exit(main())
默认Python2.7

如果您尝试在默认Python2.7下安装库,则可以如下所示指定pip路径:

/usr/bin/pip install <libraryname>
/usr/bin/pip安装
在这种情况下,它将使用Python2.7解释器编译库,并将安装在默认的Python2.7库文件夹下

蟒蛇3

在我的Ubuntu虚拟机中,python3是默认安装的,而不是pip3。我必须通过执行
sudo apt get install python3 pip
来安装。安装后,您可以使用pip3为python3安装库

关于PIP的更多信息():

在pip命令本身中确实有很多有趣的参数,可以让您以任何喜欢的方式安装软件包

比如说,


pip安装--target
将在指定的库中安装库,您实际上可以使用Anaconda pip将库安装到默认的python库中。。。(不知道为什么会有人这样做)

我不知道为什么你需要这么多不同的蟒蛇,但是对于蟒蛇,你应该使用蟒蛇

conda install pytz
pytz
安装到您的Anaconda Python中

如果您的目标是同时拥有Python2和Python3,那么可以使用conda实现这一点

conda create -n py27 python=2.7 anaconda
将使用Python 2.7版本的Anaconda创建一个conda环境(类似于VirtualEnvironment,但功能更强大)。然后,您可以使用

activate py27

您也可以将
pip
用于Anaconda,但建议您使用conda,除非您需要的软件包无法通过conda获得

(在命令提示符下)C:\Python34\scripts\pip.exe安装pytz


这假设您的路径与我的相似。我使用了所有python(2.7,3.4)的默认安装位置。

对于Anaconda,请转到C:\Users\USERNAME\Anaconda3\Scripts

将这些文件pip script.pypip.exe更改为pip3 script.pypip3.exe

然后将这些变量添加到系统变量中

瞧。。!!你的工作完成了。现在要安装,请在2.7版本中使用pip2,在anaconda版本中使用pip3。

您需要运行正确的
pip
。您应该有
pip2
pip3
。我不知道巨蟒用什么,你也可以找到virtualenvuseful@Blender根据pip网站:“python2.7.9及更高版本(在python2系列上)和Python3.4及更高版本默认包含pip。”但是命令提示符上的
pip3安装pytz
给了我这个错误:“DNS服务器对区域不具有权威性”@TianJiang:对我来说,这听起来不像是Python错误。@nathancahill,将virtualenvs与anaconda结合使用是一个可怕的建议。anaconda可能会劫持
pip
,但有趣的是,我的默认为Python 2.7。我从重新安装了
pip
,方法是在python3.4(IDLE)中运行“get pip.py”文件,并验证
pip
是否安装在我的python3.4的/lib/site-packages文件夹中。但是命令提示符中的
pip install
pip3 install
命令仍然默认为Python 2.7,并告诉我已经满足了要求。因此,我仍然无法将软件包安装到Python 3.4(空闲)。@TianJiang运行命令
which pip3
,并在VIM之类的编辑器中打开文件路径,更改
#指向Python3.4而不是Python2.7。如果有用,请告诉我。谢谢
哪个pip3
给了我这个错误:“DNS服务器对区域没有权威”。(我不知道这意味着什么。根据互联网上的一个建议,我在cmd上运行了
sfc/scannow
,但它没有为我做这项工作。)是否有其他方法可以找到
pip3
的路径?即使pip和python指向Anaconda installation,pip install(一个更大的库)正在安装到系统python。alex@alex-Lenovo-G400s-Touch:~/Coding/IPythoN$which pip/home/alex/anaconda3/bin/pipalex@alex-Lenovo-G400s-Touch:~/Coding/IPythoN$cat/home/alex/anaconda3/bin/pip#/home/alex/anaconda3/bin/python如果name='main':import sys import pip