2014-09-24 43 views
11

我有一个运行python 2.7.7的virtualenv。它有一套相当广泛的库,它们支持一组非常复杂的专有模块。换句话说,virtualenv需要保持其完整性。这当然是virtualenv的重点。Anaconda和VirtualEnv

最近,我遇到了很多问题,使用Anaconda很容易解决。我在测试环境中试用过它,它工作得很好。现在我的任务是将这种新配置融入生产。我不清楚如何将Anaconda融入虚拟世界,或者这是否是一个好主意。实际上,在我看来,我应该使用anaconda安装作为新的源代码,并解构旧的virtualenv ...将它保存的库合并到conda中。

有没有人有关于最佳方法的建议?如果需要合并环境,任何人都可以指出如何解决这个问题?

回答

8

合并Anaconda和virtualenv并没有什么意义,因为Anaconda是一个完全独立的Python安装。你可以做到这一点,通常通过设置你的PYTHONPATH,但是当你做这类事情时,事情有很大的可能性破坏,我会推荐它。

如果virtualenv中有库,可以通过为它们制作conda包来与Anaconda一起使用它们。他们可能已经有conda软件包(搜索conda search和搜索https://binstar.org/)。否则,您可以使用conda配方构建一个包。对于一些示例配方,参见http://conda.pydata.org/docs/build.htmlhttps://github.com/conda/conda-recipes

+2

我建议anaconda和virtualenv合并。我建议将曾经在virtualenv中拥有的专有库合并成为anaconda,然后把virtualenv扔掉。我不明白制作conda包的意义是什么。这些库已经是标准的Python模块。能不能简单地放入Python模块? – melchoir55 2014-09-26 00:02:44

+2

制作conda包的好处是你可以用conda跟踪它们。这不是一项要求,它只是使事情变得更容易。 – asmeurer 2014-09-26 17:23:08