如何更改默认的Anaconda python环境

我已经安装了Anaconda并创build了两个额外的环境:py3k(其中包含Python 3.3)和py34(包含Python 3.4)。 除此之外,我还有一个名为“root”的默认环境,它是Anaconda安装程序默认创build的,它包含Python 2.7。 这最后一个是默认的,每当我从terminal启动'ipython'它给我2.7版本。 为了使用Python 3.4,我需要发出命令(在shell中)

source activate py34 ipython 

这将默认环境更改为Python 3.4。 这工作正常,但是因为大部分时间我在Python 3.4上工作,而不是Python 2.7(为了教学目的,这是一个相当长的故事),所以这很烦人。 无论如何,我想知道如何将默认环境更改为Python 3.4,但要记住,我不想从头开始重新安装所有的东西。

首先,确保你有运行最新版本的conda

 conda update conda 

然后运行

 conda install python=3.5 

这将尝试将您的根环境中的所有软件包更新为Python 3版本。 如果这是不可能的(例如,因为某些软件包不是为Python 3.5构build的),它会给你一个错误消息,指出哪个软件包引起了问题。

如果您使用pip安装软件包,则必须重新安装。

在Linux下,通过修改~/.bashrc~/.bash_profile来设置默认环境更简单。最后你会发现像

 # added by Anaconda 2.1.0 installer export PATH="~/anaconda/bin:$PATH" 

用它replace

 # set python3 as default export PATH="~/anaconda/envs/python3/bin:$PATH" 

这就是所有这一切。

概观
有些人为了兼容性的原因有不同版本的Python的多个Anaconda环境。 在这种情况下,你应该有一个脚本来设置你的默认环境。 使用这种方法,您可以保留您在环境中使用的python版本。

以下假定environment_name是您的环境的名称

Mac / Linux:
编辑你的bashconfiguration文件,使最后一行是“source activate environment_name ”。 在Mac OSX中,这是〜/ .bash_profile,在其他环境中,这可能是〜/ .bashrc

例:
这是我在Mac OSX上做的

  1. 打开terminal并键入:

    nano〜/ .bash_profile

  2. 转到文件结尾并键入以下内容,其中“p3.5”是我的环境:

    源码激活p3.5

  3. 退出文件。 开始一个新的terminal窗口。

  4. 键入以下内容以查看活动的环境

    conda info -e

结果表明我默认使用我的p3.5环境。

对于Windows:
使用“activate environment_name ”创build命令文件(.cmd),并按照这些说明在打开命令提示符时执行它

  1. 创build一个batch file命令,例如“my_conda.cmd”,把它放在Application Data文件夹中。
  2. 将其configuration为在您打开cmd时自动启动。 这个设置在registry中:
    键:HKCU \ SOFTWARE \ Microsoft \ Command Processor
    值:自动运行
    键入:REG_EXPAND_SZ
    数据:“%AppData%\ my_conda.cmd”

从这个答案: https : //superuser.com/a/302553/143794

对于Windows Anaconda带有Anaconda提示符,这是一个cmd的快捷方式,可以用来运行conda命令,而无需在PATHvariables中添加anaconda。 find它的位置,复制并重命名副本(比如myenv_prompt)。 右键单击myenv_prompt并在上下文菜单中select属性。

在这里输入图像说明

目标forms的属性窗口应该已经被填充文本,如%windir%\system32\cmd.exe "/K" C:\Users\xxx\AppData\Local\Continuum\Miniconda3\Scripts\activate.bat C:\Users\xxx\AppData\Local\Continuum\Miniconda3\这个命令有三个部分1)启动… \ cmd.exe 2)运行… \ acitvate.bat与环境3)… \ Miniconda3 \

将第三部分更改为默认的环境path(比如说myenv),即填写Target窗体 ,如%windir%\system32\cmd.exe "/K" C:\Users\xxx\AppData\Local\Continuum\Miniconda3\Scripts\activate.bat C:\Users\xxx\AppData\Local\Continuum\Miniconda3\envs\myenv

现在,myenv_prompt将作为启动cmd的快捷方式,使用myenv作为python的默认环境。 这个快捷键可以保存在开始菜单或固定在任务栏中。

这种方法的一个优点是,你可以创build几个快捷方式,每个都有不同的环境作为默认环境。 也可以通过填写“属性”窗口的“ 开始”来设置默认文件夹

希望这可以帮助

PS:不需要findAnaconda Prompt,可以通过改变任何快捷方式的目标来完成。 但是你需要知道cmd.exe和activate.bat的path

我对这里提出的任何答案都不满意,因为在我的平台上激活一个环境需要几秒钟(无论出于何种原因)

我修改了我的pathvariables,使我想要的默认环境优先于实际的默认值。

在我的情况下,我使用以下命令来完成环境“py35”:

 setx PATH "%userprofile%\Anaconda3\envs\py35\;%PATH%" setx PATH "%userprofile%\Anaconda3\envs\py35\Scripts;%PATH%" 

找出你的环境存储在哪里,激活它,并进入where python 。 我不确定这种方法是否有缺点。 因为它也改变conda可执行文件的默认path。 如果是这样的话,请评论。

在你的情况下,你只需要从Conda提示符应用下面的命令。

 >conda config --set core.default_env=py34 

然后,如果需要closures并重新启动Conda提示符。