当我使用pip install matplotlib --upgrade
时,它会运行并安装matplotlib
和所有依赖项,最后会显示uninstalled version '1.3.1'
。再次运行python和matplotlib.__version__
输出'1.3.1'
,即使它刚刚声明已卸载。如何切换我正在运行的python,希望pip
正在安装和更新软件包?
编辑:运行Mac OS 10.10.1,使用bash中的python。
which pip
返回/usr/local/bin/pip
,which -a python
返回
/opt/local/bin/python
/opt/local/bin/python
/Library/Frameworks/Python.framework/Versions/Current/bin/python
/Library/Frameworks/Python.framework/Versions/Current/bin/python
/Library/Frameworks/Python.framework/Versions/Current/bin/python
/Library/Frameworks/Python.framework/Versions/2.6/bin/python
/usr/bin/python
我假设是问题所在。我之前删除了2.6,但我的Mac使用它,我不得不恢复我的操作系统。我如何在它们之间切换。
答案 0 :(得分:0)
您的问题似乎是您安装了两个或更多Python 2.7,而PATH上的第一个python
来自一个安装(MacPorts版本,/opt/local/bin/python
),而第一个pip
PATH上的{1}}来自另一个(你没有说过,但我猜它是/usr/local/bin/pip
,并且它附加到预安装的Apple Python或另一个Python)。 / p>
如果你想在整个文件系统中安装大量Pythons并在不使用virtualenv
的情况下切换它们,你只需编写一些脚本来修改你的PATH
。 (还有你的PYTHONPATH
,如果你使用的话......但希望你没有。)
但我不建议这样做。如果您想使用MacPorts Python:
pip
(它应该在/opt/local/bin/pip
中)。我不知道MacPorts是否有单独的python-pip
包,或者您希望install it manually或其他方式。pip
后打开一个新的终端窗口。或者,为了安全起见,只需明确使用/opt/local/bin/pip
,直到您下次退出并重新登录。#!/opt/local/bin/python
而不是#!/usr/bin/env python
。port install python-ipython
或port install python27-ipython
,如果没有端口文件,则只返回pip
。作为旁注,许多有这个问题的人也有MacPorts与Homebrew(或者有时是Fink,gentoo-alt或其他软件包管理器)发生冲突,但现在都不是很常见。如果你正在使用两个这样的软件包经理,除非你知道自己在做什么,否则你真的应该这样做。我将完全禁用一个(至少将它从PATH中删除,如果不卸载它)。在你这样做之后,你可能不得不重建一堆东西,但它比有一些东西有时更有效......