各种Python捆绑包(EPD / Anaconda)与手动安装的相对优缺点是什么?
我已经安装了EPD学术,我没有任何问题。它提供了我认为我将需要的更多软件包,并且使用enpkg enstaller进行更新非常容易。 EPD学术许可证要求每年更新一次,免费版本不会轻易更新。
目前我实际上只使用了少量软件包,例如Pandas,NumPy,SciPy,matplotlib,IPython,{{3}和他们各自的依赖。
对于这种限制使用,我最好手动安装和pip install --upgrade 'package'
,还是捆绑包提供超出此范围的任何内容?
答案 0 :(得分:47)
更新2015 :现在我总是推荐Anaconda。它包括许多用于科学计算,数据科学,Web开发等的Python软件包。它还提供了一个优秀的环境工具conda
,它允许在环境之间轻松切换,甚至在Python 2和3之间。它也是一旦发布了新版本的软件包,就会很快更新,您只需conda update packagename
进行更新即可。
以下原始答案:
在Windows上,复杂的是编译数学包,所以我认为只有当你只对Python
感兴趣而没有其他包时,手动安装才是可行的选择。
因此,最好选择EPD(现为Canopy)或Anaconda。
Anaconda有大约270个软件包,其中包括对大多数科学应用程序和数据分析最重要的软件包,即NumPy,SciPy,Pandas,IPython,{{ 3}},matplotlib。 所以如果这对你来说足够了,我会选择Anaconda。
相反,如果您对其他软件包感兴趣,如果您使用任何Enthought软件包(例如Scikit-learn对实时数据可视化非常有用),那么EPD / Canopy可能是更好的选择。学术版本在基本安装中具有更多数量的包,并且在存储库中有更多包。 Anaconda还包括Chaco。
答案 1 :(得分:11)
我去年尝试了各种Windows发行版,试图为我的工作环境找到一个sutable(在代理后面,但无法访问代理配置)。
以下是我对经验的反馈:
<强> EPD /敞篷:强> 我们有EPD的许可证,但由于奇怪的代理情况我们无法更新。为了添加一些包(例如最新版本的xlrd/xlwt),我从源代码编译。要更新SciPy和NumPy,我使用了来自http://www.lfd.uci.edu/~gohlke/pythonlibs/的预编译安装程序,但有时会破坏兼容性。我喜欢拥有完全配置的Py2exe和Cython,而且它只是开箱即用。
过了一会儿,我尝试安装Canopy的免费版本,但它缺少Cython和py2exe以及我需要的一些特定的高级打包,所以我从未真正使用它。 我的一些同事购买了完整的Canopy许可证,但我们仍然不确定他们将如何更新......
<强>的Python(X,Y):强> 不想与许可证斗争,我在家里安装了Python(x,y)。我现在注意到的唯一缺点是标准安装要求您选择所需的软件包。这既好又坏,因为我不能确定我的客户端将具有与安装时完全相同的配置。 (Enthought工具套件可以用Python(x,y)安装。) 在使用Python(x,y)一段时间后,我只是注意到我安装了32位版本。虽然它们的网站上并不清楚,但截至2015年7月它们似乎没有64位版本。我将卸载它并获得64位版本。
<强>蟒:强> 当我第一次写这篇文章时,Anaconda似乎还没有足够的软件包。几年后,似乎好多了,我打算试一试!
<强>手册:强> 为了避免与我们旧的EPD版本的版本兼容性问题,我最终使用手动Python安装并从上面链接的LFD网站添加其他包。它运行良好,但我仍然建议Canopy给需要高级软件包的新用户(例如GDAL或PyFITS)。
摘要:如果您选择Canopy,请获取完整许可(学术版或购买版)。否则,使用Python(x,y),它最终将是相同的。
在Ubuntu上:
无需分发。这些都是相对较新的(+/- 6个月是可以容忍的)和预编译。你只需要执行sudo apt-get install python python-scipy
就可以了!最先进的包也在那里。
答案 2 :(得分:4)
其他答案很好地覆盖了地面,所以我只想评论一个没人提到的特定方面。它可能是相当小众的,但可能可能为Linux系统下的某些人创建或破坏Anaconda或Canopy:
Anaconda Python构建使用UCS4 Unicode模式,而Enthought Canopy使用UCS2。
这实际上意味着,如果您依赖于任何无法自行编译的扩展(例如预编译的专有库),如果它们不是为具有相同模式的Python版本构建的,您迟早会遇到类似undefined symbol: PyUnicodeUCS4_AsUTF8String
的错误。
根据PEP 0513,UCS4目前似乎更受欢迎和推荐。此外,整个UCS兼容性问题似乎只影响2.x和&lt; 3.3版本。
答案 3 :(得分:-4)
我使用Anaconda已经很多年了,并且非常喜欢它。遗憾的是,IPython Notebook(现在Jupyter)在没有企业版的情况下无法使用。
我想在教室里使用Jupyter笔记本,所以我切换到了Canopy。安装我们需要的所有软件包似乎很容易。诚然,我们还没有测试过它们。