如何更改默认的Anaconda python环境

问题描述 投票:132回答:9

我已经安装了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 3.4,请记住我不想从头开始重新安装所有内容。

python python-2.7 python-3.x environment anaconda
9个回答
85
投票

首先,通过运行确保您拥有最新版本的conda

conda update conda

然后跑

conda install python=3.5

这将尝试将根环境中的所有软件包更新为Python 3版本。如果不可能(例如,因为某些包不是为Python 3.5构建的),它将给出一条错误消息,指出导致该问题的包。

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


46
投票

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

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

替换为

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

这就是它的全部内容。


36
投票

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

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

Mac / Linux: 编辑bash配置文件,以便最后一行是“source activate environment_name”。在Mac OSX中,这是〜/ .bash_profile,在其他环境中,这可能是〜/ .bashrc

例: 这是我在Mac OSX上的表现

  1. 打开终端并输入: nano~ / .bash_profile
  2. 转到文件末尾并键入以下内容,其中“p3.5”是我的环境: 源激活p3.5
  3. 退出文件。启动一个新的终端窗口。
  4. 键入以下内容以查看活动的环境 conda info -e

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

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

  1. 创建批处理文件命令,例如“my_conda.cmd”,将其放在Application Data文件夹中。
  2. 将其配置为在打开cmd时自动启动。此设置在注册表中: key:HKCU \ SOFTWARE \ Microsoft \ Command Processor 值:AutoRun 类型:REG_EXPAND_SZ 数据:“%AppData%\ my_conda.cmd”

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


8
投票

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

enter image description here

属性窗口的Target窗体应该已经填充了文本,类似于%windir%\system32\cmd.exe "/K" C:\Users\xxx\AppData\Local\Continuum\Miniconda3\Scripts\activate.bat C:\Users\xxx\AppData\Local\Continuum\Miniconda3\这个命令有三个部分1)start ... \ cmd.exe 2)run ... \ acitvate.bat with environment 3)... \ Miniconda3 \

将第3部分更改为您想要的环境路径(比如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:不需要找到Anaconda Prompt,可以通过改变任何快捷方式的目标来完成。但是您需要知道cmd.exe和activate.bat的路径


5
投票

正确的答案(截至2018年12月)是......你做不到。升级conda install python=3.6可能有效,但如果您有必要的软件包但无法卸载它可能不会。

Anaconda使用名为base的默认环境,您无法创建具有相同名称的新环境(例如python 3.6)。这是故意的。如果你想让你的基础Anaconda成为python 3.6,那么正确的方法就是安装Anaconda for python 3.6。作为软件包管理器,Anaconda的目标是将不同的环境封装起来,因此为什么必须对它们进行激活,以及为什么不能随意安静地切换基础软件包,因为这可能会导致生产系统出现许多问题。


5
投票

改变永久性

conda install python={version}

暂时改变

查看您的环境

在您的终端窗口或Anaconda提示符上运行conda info --envs

如果它不显示您要安装的环境

运行conda create -n py36 python=3.6 anaconda for python 3.6更改版本作为您的喜好

激活环境(使用Anaconda提示)

运行activate envnme envnme你可以通过这个commandconda info --envs找到一个例子当你运行conda info --envs它显示

base * C:\Users\DulangaHeshan\Anaconda3 py36 C:\Users\DulangaHeshan\Anaconda3\envs\py36

然后运行activate py36

检查运行python --version

在Windows中,最好在激活另一个环境之前停用一个环境。 https://docs.conda.io/projects/conda/en/latest/user-guide/tasks/manage-environments.html?highlight=deactivate%20environment


1
投票

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

我修改了我的路径变量,以便我想要的环境优先于实际默认值。

在我的例子中,我使用以下命令来完成环境“py35”:

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

找出您的环境存储位置,激活它并输入where python。我不确定这种方法是否有任何缺点。因为它也改变了conda可执行文件的默认路径。如果是这种情况,请发表评论。


0
投票

在桌面或任务栏上创建anaconda提示符的快捷方式,然后在该快捷方式的属性中确保将“目标:”中的最后一个路径修改为您的环境路径:

C:\ Users \ BenBouali \ Anaconda3 \将更改为C:\ Users \ BenBouali \ Anaconda3 \ envs \ tensorflow-gpu

preview

这样你可以使用该快捷方式在点击它时打开某个环境,你也可以将它添加到你的路径,现在你只需输入快捷方式的名称就可以从Windows运行框中运行它。


0
投票

我在使用anaconda安装库时得到了这个。我的版本从Python 3. *到2.7,我的很多东西都停止了工作。我找到的最佳解决方案是首先看到最新版本:

conda search python

然后更新到您想要的版本:

conda install python=3.*.*

资料来源:http://chris35wills.github.io/conda_python_version/

其他有用的命令:

conda info
python --version
© www.soinside.com 2019 - 2024. All rights reserved.