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

source activate py34
ipython

将默认环境更改为Python 3.4。这很好,但这很烦人,因为大部分时间我都在使用Python 3.4,而不是Python 2.7(我使用Python 2.7是为了教学目的,说来话长)。无论如何,我想知道如何将默认环境更改为Python 3.4,请记住,我不想从头开始重新安装所有内容。


当前回答

正确答案(截至2018年12月)是……你不能。升级conda install python=3.6可能会工作,但如果你有必要的包,但不能卸载,则可能不会。

Anaconda uses a default environment named base and you cannot create a new (e.g. python 3.6) environment with the same name. This is intentional. If you want your base Anaconda to be python 3.6, the right way to do this is to install Anaconda for python 3.6. As a package manager, the goal of Anaconda is to make different environments encapsulated, hence why you must source activate into them and why you can't just quietly switch the base package at will as this could lead to many issues on production systems.

其他回答

只要在加载终端/shell时激活py34环境即可。

如果您使用Bash,请输入以下语句:

conda activate py34

在你的.bash_profile(或.bashrc)中:

$ echo 'conda activate py34' >> ~/.bash_profile

每次运行新终端时,都会加载conda环境py34。

如果你想让Anaconda Navigator默认为你创建的Virtual Env,转到文件> Preference并在下拉lint中选择default conda Env:

如果你想让Anaconda命令自动打开虚拟环境,而不需要输入activate envName,这样做:

右键单击conda快捷方式>进入属性,将目标更改为如下所示:

%windir%\System32\cmd.exe "/K" C:\Anaconda\Scripts\activate.bat C:\Anaconda\envs\p37

你还可以设置默认的工作目录,就像我在snapshop中做的那样:

gl

对于windows Anaconda附带Anaconda提示符,这是cmd的快捷方式,可以使用运行conda命令,而无需在PATH变量中添加Anaconda。 找到它的位置,复制并重命名副本(比如myenv_prompt)。右键单击myenv_prompt并在上下文菜单中选择属性。

属性窗口的目标窗体应该已经填充了文本,例如%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 with environment 3)…\Miniconda3\

将第三部分更改为你想要的默认环境(例如myenv)的路径,即填充目标表单,如%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的默认环境。此快捷方式可以保留在开始菜单或固定在任务栏。

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

希望这能有所帮助

PS:不需要找到蟒蛇提示符,可以通过改变任何快捷方式的目标来完成。但是你需要知道cmd.exe和activate.bat的路径

概述 出于兼容性考虑,有些人有多个Conda环境,使用不同版本的Python。在这种情况下,您应该在shell初始化文件中激活所需的默认环境(例如,.bashrc, .zshrc)。使用这种方法,您可以保留在您的环境中使用的Python版本。

下面假设environment_name是环境的名称

Mac / Linux: 编辑bash概要文件,使最后一行是conda activate environment_name。在Mac OSX中,这是~/。Bash_profile,在其他环境中可能是~/.bashrc

例子: 下面是我在Mac OSX上做的

打开终端和类型: 纳米~ / . bash_profile 转到文件末尾,输入以下内容,其中“p3.5”是我的环境: Conda激活p3.5 出口文件。启动一个新的终端窗口。 键入以下内容以查看哪些环境处于活动状态 Conda info -e

结果显示我默认使用p3.5环境。

Windows: 创建一个带有activate environment_name的命令文件(.cmd),并按照下面的说明让它在打开命令提示符时执行

创建一个批处理文件命令,例如“my_conda。cmd”,把它放在应用程序数据文件夹。 将其配置为每当打开cmd时自动启动。此设置在注册表中: 键:HKCU\软件\微软\命令处理器 价值:自动运行 类型:REG_EXPAND_SZ 数据:“% AppData % \ my_conda.cmd”

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

activate.py是硬编码的,当你计算conda shell生成的shell钩子时,它会将conda activate base\n发送到你的shell配置文件中。zsh钩。

你可以通过以下方式抑制这个硬编码的“自动激活基础”:

conda config --set auto_activate_base false

然后,在~/。zshrc ~ /。Bashrc或任何你的shell配置文件来源,你可以添加以下内容(在conda shell钩子之后)来显式激活你所选择的环境:

conda activate py34