由conda和本地python

时间:2017-08-16 15:50:13

标签: python anaconda

在我的Ubuntu 14.04计算机中,我安装了两种Python,一种称为本机python,它与Ubuntu操作系统一起出现,另一种是conda版本,在安装conda软件包后安装。

如果我启动python命令,则默认python引用conda版本。

使用conda可以为包管理带来很多好处。但是在我安装conda之前,我已经使用pip install命令在本机Python上安装了一些Python模块。但是,conda Python无法访问这些模块。所以,这是我的问题:如何设置conda以便它可以使用本机python管理的包?

当我提出这个问题时,我不禁要问另一个问题:

  • 将conda和本地python管理的包混合起来是一个好习惯吗?我可以遵循的任何练习吗?
  • 如何将Python切换为原生Python?

1 个答案:

答案 0 :(得分:2)

混合使用conda和本机python管理的软件包并不是一个好习惯。但是,您仍然可以使用pip将Python模块安装到Anaconda中。我建议严格使用Anaconda(并使用conda虚拟环境以及conda包管理器),而不再使用本机python。

你最好的选择是严格使用Anaconda前进。我会将软件包重新安装到conda虚拟环境中。

conda create --name NAME_HERE

conda create --name NAME_HERE --clone root如果您想要包含默认情况下Anaconda附带的所有软件包。

然后使用source activate NAME_HERE(Linux,macOS)或activate NAME_HERE(Windows)切换到新环境。然后,您可以使用conda包管理器和pip安装包。

有关详细信息,请参阅the conda docs on managing conda virtual environments

善良的用户@MikhailKnyazev指出,这就是 使用本机python管理的软件包的方式。它仍然不推荐

  

虽然这当然不是一个好习惯,但知道它是有用的   您可以在虚拟环境中添加系统端软件包   像这样对它们进行符号化:ln -s /usr/lib/<PYTHON_VER>/dist-packages/<PACKAGE> <virtualenv_path>/lib/<PYTHON_VER>/site-packages/