如何在Linux上为Anaconda设置默认的Python路径?

5

我已在Linux机器上安装了Anaconda。我注意到,当使用以下命令退出Anaconda环境后:

source deactivate

运行时:

which python

我理解的是:

/home/user/anaconda/bin/python

与其

/usr/bin/python

我该如何恢复这个设置?

我对你在这里想要做什么感到非常困惑。你的问题标题表明你想使用安装在Anaconda环境中的系统Python包。如果这是你的问题,我不建议继续这样做,因为我认为它不会很好地工作。另一方面,如果你只想使用系统Python及其自己的包,答案是你必须手动重写你的PATH变量,你不能停用根Anaconda环境。请澄清一下,我想我可以回答 :-) - darthbith
1
嗨,Anaconda是一个虚拟环境,所以如果我“source deactivate”它,它不应该被停用吗?什么是根Anaconda环境?我希望默认的Python是根Anaconda环境,而不是/home/user/anaconda/bin/python。我应该确定PYTHONPATH吗? - catthe
你好!Anaconda不是一个虚拟环境,而是一种你可以在电脑上安装的Python独立发行版。在Anaconda发行版中,你可以激活停用像虚拟环境一样的环境。然而,当你安装Anaconda时,根环境也会被安装,并且除非你不使用Anaconda,否则无法停用它。为什么要在Anaconda中使用系统默认的Python?为什么不使用Anaconda安装的Python版本呢? - darthbith
嗨,我有点困惑,我以为Anaconda是一个虚拟环境。PYTHON_PATH和PATH环境变量有什么区别? - catthe
这其实是一个不同的问题,如果你不理解的话,我建议你进行更多的研究,或者询问另外一个问题。基本上,PYTHONPATH 是 Python 导入包的位置,而 PATH 是系统(如 Ubuntu)用于运行可执行文件的位置。 - darthbith
4个回答

5
评论有点涉及到问题的答案,但为了澄清一下:

当你安装Anaconda时,你必须同意将其添加到你的PATH中。你需要检查你的~/.bash*文件,并查找任何export PATH=行来检查这个。所以Anaconda始终在你的路径上。 source deactivate命令只会停用“子”Conda环境。它永远不会删除所谓的“根”Conda环境(即你最初安装的那个)。如果你不想默认在你的PATH上使用Anaconda,那么就从你的~/.bash*启动文件中删除它。然后当你想使用Anaconda时,你需要将其添加到你的PATH中。或者直接将你感兴趣的特定Conda环境添加到你的PATH中,不要担心activatedeactivate脚本。在它们的核心,它们只是修改PATH

希望这能澄清事情。


1
安装Anaconda后,它自带所有软件,并询问您是否希望将其bin目录添加到PATH变量中作为默认选项。如果这样做,您只能手动从.bashrc中删除以撤消此操作。
我选择不这样做,但我编写了一个shell脚本,在需要时启动spyder并使用Anaconda分发,而不会改变我的PATH,通过在shell脚本中像这样调用spyder:
PATH=/home/<... path to where i installed anaconda>/bin:$PATH spyder &

这意味着我仅在运行命令(spyder)时将其分发的bin添加到路径中,否则我的环境不受Anaconda的影响。
如果我想向其中添加内容,我会在源代码时向shell传递选项,从而触发这些操作:
PATH=/home/<... path to where i installed anaconda>/bin:$PATH
PS1='\[\033[1;34m\](A)\w:\[\033[0m\] '

我希望能够看到(有颜色!)在这个终端中使用了修改后的PATH,其中包括来自Anaconda的Python3等等...完成后,我会关闭终端!:)


1
为了恢复到以前的默认设置,我在.bashrc文件中注释掉路径设置条目,并获得以下结果:
$ which python
/usr/bin/python
$ python -v
python 2.7.*

1
快速修复,只需运行此命令,然后使用Python:export PATH=/bin:/usr/bin:$PATH - Kevin Chou
1
“proper fix” 看看你的主目录中的 .bashrc 文件,寻找类似的行,该行将 anaconda 路径添加到 PATH 变量中并将其删除(或注释掉)。 - Kevin Chou

0

如果您已经安装了某些东西,通常希望在使用旧的安装之前先使用它。

您的路径设置正确:在系统安装之前搜索您的安装。

如果要使用系统Python,请运行% /usr/bin/python

如果您不想使用Anaconda,请将其删除(或将其移动到路径之外的其他位置)。

这可能会有所帮助:% which -a python


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接