Conda示例不工作,显示的是更新的而不是旧的numpy?
我在这里运行了一个例子; http://conda.pydata.org/docs/index.html
我用的是Mac,版本是10.8.5。我可能搞错了什么,因为我最开始在使用Anaconda的时候遇到了一些问题,但我以为现在已经没问题了。为了确认一下,我运行了上面帮助文档中的例子。这个例子只是创建了一个新的conda环境,并且使用了一个旧版本的numpy,然后展示了如何通过source activate [env]来切换到这个环境。
在我的情况下,一切看起来都运行得不错,但numpy的版本却没有变化。你有什么想法吗?非常感谢!
$ ~/anaconda/bin/python2.7 Python 2.7.6 |Anaconda 1.9.2 (x86_64)| (default, Jan 10 2014, 11:23:15) [GCC 4.0.1 (Apple Inc. build 5493)] on darwin Type "help", "copyright", "credits" or "license" for more information. >>> import numpy nu>>> numpy.__version__ '1.8.1' >>> quit() $ conda create -p ~/anaconda/envs/trynum16 numpy=1.6 anaconda $ source activate ~/anaconda/envs/trynum16 discarding ~/anaconda/bin from PATH prepending ~/anaconda/envs/trynum16/bin to PATH (~/anaconda/envs/trynum16):~ $ echo $PATH ~/anaconda/envs/trynum16/bin:/usr/local/bin:/Library/Frameworks/Python.framework/Versions/2.7/bin:/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/bin:/opt/X11/bin:/usr/local/git/bin:/bin (~/anaconda/envs/trynum16):~ $ python Python 2.7.5 |Anaconda 1.8.0 (x86_64)| (default, Oct 24 2013, 07:02:20) [GCC 4.0.1 (Apple Inc. build 5493)] on darwin Type "help", "copyright", "credits" or "license" for more information. >>> import numpy >>> numpy.__version__ '1.8.1' >>> quit() (~/anaconda/envs/trynum16):~ $ echo $PATH ~/anaconda/envs/trynum16/bin:/usr/local/bin:/Library/Frameworks/Python.framework/Versions/2.7/bin:/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/bin:/opt/X11/bin:/usr/local/git/bin:/bin (~/anaconda/envs/trynum16):~ $ source deactivate discarding ~/anaconda/envs/trynum16/bin from PATH $ echo $PATH ~/anaconda/bin:/usr/local/bin:/Library/Frameworks/Python.framework/Versions/2.7/bin:/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/bin:/opt/X11/bin:/usr/local/git/bin:/bin
1 个回答
3
好的,问题出在用户操作上。我电脑上安装的不是Anaconda的Python版本里有一个numpy库,而这个库在路径中被优先找到!为了找出冲突并解决它,我做了以下步骤。
# Start from Non-Anaconda or Root Python environment $ source deactivate $ conda info -e # conda environments: trynum16 ~/anaconda/envs/trynum16 root * ~/anaconda $ which python /usr/local/bin/python $ echo $PATH /usr/local/bin:~/anaconda/bin:/Library/Frameworks/Python.framework/Versions/2.7/bin:/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/bin:/opt/X11/bin:/usr/local/git/bin:/bin # Amongst many other items, see the 'offending' numpy here $ pip freeze numpy==1.8.1 # Without Sudo, got error, $ pip uninstall numpy OSError: [Errno 13] Permission denied: '/Library/Python/2.7/site-packages/bson/__init__.py' # So did Sudo, probably my mistake on the install? $ sudo pip uninstall numpy $ source activate ~/anaconda/envs/trynum16 $ conda info -e # conda environments: trynum16 * ~/anaconda/envs/trynum16 root ~/anaconda $ python Python 2.7.6 |Continuum Analytics, Inc.| (default, Jan 10 2014, 11:23:15) [GCC 4.0.1 (Apple Inc. build 5493)] on darwin >>> import numpy >>> numpy.__version__ '1.6.2'
完成这些后,我创建了两个不同版本的conda环境,它们都能正常工作。下面是如何创建第二个环境的步骤。
预检查:
1. 查看PYPI上有哪些numpy版本:
https://pypi.python.org/pypi/numpy 。
这个页面只显示最新版本,所以你可以在这里查看历史版本;
下载链接: http://sourceforge.net/projects/numpy/files/NumPy/
2. 查看Binstar上有哪些numpy版本; https://binstar.org/search?q=numpy
# 3.Which NumPy versions have official, public Conda packages? $ conda search numpy Fetching package metadata: ... numpy 1.5.1 py27_0 defaults #...etc # This old version Conflicted with Anaconda, so removed that part. $ conda create -p ~/anaconda/envs/trynum15 numpy=1.5.1 $ source activate /Users/amoroney/anaconda/envs/trynum15 $ conda info -e # conda environments: trynum15 * ~/anaconda/envs/trynum15 trynum16 ~/anaconda/envs/trynum16 root ~/anaconda $ python >>> import numpy >>> numpy.__version__ '1.5.1'