在OS X 10.7上,NumPy不会从1.5.1升级到1.6.2

BMS*_*BMS 5 python numpy easy-install osx-lion

我正在尝试更新/升级我的NumPy,但我失败了.我想我可能在不同的目录中安装了多个版本的NumPy,但默认情况下python导入旧版本.有帮助吗?

这是我的Python所在的位置:

Gonzo-vs-Kitties:~ brian$ which python
/Library/Frameworks/Python.framework/Versions/2.7/bin/python
Run Code Online (Sandbox Code Playgroud)

这是Python导入的版本:

Gonzo-vs-Kitties:~ brian$ python
Python 2.7.3 (v2.7.3:70274d53c1dd, Apr  9 2012, 20:52:43) 
[GCC 4.2.1 (Apple Inc. build 5666) (dot 3)] on darwin
Type "help", "copyright", "credits" or "license" for more information.
>>> import numpy
>>> print numpy.__version__
1.5.1
>>>
Run Code Online (Sandbox Code Playgroud)

现在我使用easy_install升级NumPy:

Gonzo-vs-Kitties:~ brian$ sudo easy_install --upgrade numpy
Searching for numpy
Reading http://pypi.python.org/simple/numpy/
Reading http://numpy.scipy.org
Reading http://sourceforge.net/project/showfiles.php?group_id=1369&package_id=175103
Reading http://numeric.scipy.org
Best match: numpy 1.6.2
Processing numpy-1.6.2-py2.7-macosx-10.7-intel.egg
numpy 1.6.2 is already the active version in easy-install.pth
Installing f2py script to /usr/local/bin

Using /Library/Python/2.7/site-packages/numpy-1.6.2-py2.7-macosx-10.7-intel.egg
Processing dependencies for numpy
Finished processing dependencies for numpy
Run Code Online (Sandbox Code Playgroud)

即使我升级后,NumPy仍然是旧版本:

>>> import numpy
>>> print numpy.__version__
1.5.1
>>>
Run Code Online (Sandbox Code Playgroud)

这是我的sys.path:

>>> print sys.path
['', '/Library/Python/2.7/site-packages/nose-1.2.1-py2.7.egg', '/Library/Python/2.7/site-packages/virtualenv-1.8.2-py2.7.egg', '/Users/brian/Code/trac/genshi-trunk', '/Users/brian/Code/trac/trac-trunk', '/System/Library/Frameworks/Python.framework/Versions/2.7/Extras/lib/python', '/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/lib-dynload', '/Library/Python/2.7/site-packages/pip-1.2.1-py2.7.egg', '/Library/Python/2.7/site-packages/numpy-1.6.2-py2.7-macosx-10.7-intel.egg', '/Library/Frameworks/Python.framework/Versions/2.7/lib/python27.zip', '/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7', '/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/plat-darwin', '/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/plat-mac', '/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/plat-mac/lib-scriptpackages', '/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/lib-tk', '/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/lib-old', '/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/lib-dynload', '/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages', '/Library/Python/2.7/site-packages']
Run Code Online (Sandbox Code Playgroud)

有任何想法吗?

wai*_*kuo 4

检查 numpy 包的路径:

import numpy
print numpy.__path__
Run Code Online (Sandbox Code Playgroud)

并检查是否是您刚刚安装的那个。

  • 取决于您如何安装它们。或者您可以转到该目录并直接将其删除。 (2认同)
  • 请注意,覆盖 `/System/...` numpy 是一个**非常糟糕的想法**,因为它可能由操作系统内部使用。到目前为止最安全的方法是在本地安装 numpy(即从源代码“python setup.py install --user”),并更新 PYTHONPATH,以便它在系统之前捕获本地 numpy(只需执行“PYTHONPATH=$” HOME/.local/lib/python2.x/site-packages:$PYTHONPATH`) (2认同)