Python科学计算利器——Anaconda

(搬运自我在SegmentFault的博客)

最近在用Python做中文自然语言处理。使用的IDE是PyCharm。PyCharm确实是Python开发之首选,但用于科学计算方面,还略有欠缺。为此我尝试过Enthought Canopy,但Canopy感觉把问题搞得复杂化,管理Python扩展也不太方便。直到今天我发现了Anaconda

Anaconda是一个和Canopy类似的科学计算环境,但用起来更加方便。自带的包管理器conda也很强大。
首先是下载安装。Anaconda提供了Python2.7和Python3.4两个版本,同时如果需要其他版本,还可以通过conda来创建。安装完成后可以看到,Anaconda提供了Spyder,IPython和一个命令行。下面来看一下conda。
输入conda list来看一下所有安装时自带的Python扩展。粗略看了一下,其中包括了常用的 Numpy,Scipymatplotlibnetworkx等,以及beautiful-souprequestsflasktornado等网络相关的扩展。
奇怪的是,里边竟然没有sklearn,所以首先装一下它。

conda install scikit-learn

如果需要指定版本,也可以直接用[package-name]=x.x来指定。
conda的repo中的扩展不算太新,如果想要更新的,可能要用PyPI或者自己下载源码。而conda和pip关联的很好。使用pip安装的东西可以使用conda来管理,这点要比Canopy好。下图是我用pip安装的nltkjiebagensim
请输入图片描述

我对这个科学计算环境的另一个要求就是能够多个Python版本并存,尤其是2.x和3.x的并存。这个通过virtualenv可以做到。Anaconda也正是通过其实现的。
下面用conda创建一个名叫python2的版本为python2.7的环境。

conda create -n python2 python=2.7

这样就会在Anaconda安装目录下的envs目录下创建python2这个目录。
请输入图片描述
向其中安装扩展可以:

  • 直接用conda install并用-n指明安装到的环境,这里自然就是python2
  • virtualenv那样,先activate,然后在虚拟环境中安装。

这里突然有一个问题,怎样在IDE中使用创建出来的环境?如果是PyCharm等IDE,直接设置Python安装目录就可以了。那spyder呢?其实spyder就是一个Python的扩展,你需要在虚拟环境中也装一个spyder。
最后就是spyder的主界面。变量查看窗口很好用。
请输入图片描述

posted @ 2014-09-08 10:07 andong777 阅读(...) 评论(...) 编辑 收藏