在同一台机器上有不同版本的Python和Anaconda

Having different versions of Python and Anaconda in same machine

本问题已经有最佳答案,请猛点这里访问。

我正在用python 3.7 idle和pycharm工作和学习python,但是现在我必须使用anaconda解决一些不同的问题。

我的问题是,是否可以在同一台机器上安装水蟒,但不干扰我已经安装的旧python 3.7?因为在其中一个应用程序中,我也在使用django等,但是anaconda主要用于数据处理,我不希望它们彼此交互或覆盖包。

我应该使用类似虚拟环境的东西来安装Python吗?如果是这样,最好的方法是什么?

我是新来的,谢谢你的帮助!


Python有自己的虚拟环境管理器conda。这意味着,在默认情况下,Python将独立于您的系统python 3.7,而软件包将不会相互作用。

以干净的方式管理两个python安装的一个解决方案是为这两个安装使用conda环境。最干净的IMO应该是:

  • 安装Miniconda(conda管理器的最小安装)
  • 创建一个名为anaconda的环境,并安装分发中的所有包(使用conda create -n anaconda anaconda完成)。
  • 创建一个名为py37的环境,并安装当前python 3.7安装中的所有包。

然后可以使用conda activate py37使用django,使用conda activate anaconda处理数据。两者之间没有交互作用,而且是在两者之间切换的一种非常简单的方法。有关详细信息,请参阅Conda文档。

当然,使用virtualenv或pipenv可以以类似的方式分离环境。但是请注意,只有Conda允许您使用来自Anaconda分布的特性来这样做,这看起来是您的问题的一个要求。


我建议您对每个项目使用虚拟环境。

这是一个非常有用的视频:https://www.youtube.com/watch?V= N5VSCPTWKOK

以及venv文档:https://docs.python.org/3/library/venv.html