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


当前回答

我在使用anaconda安装图书馆时得到了这个。我的版本来自Python 3。*到2.7,我的很多东西停止工作。 我发现最好的解决方案是先看看最新的版本:

conda search python

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

conda install python=3.*.*

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

其他有用的命令:

conda info
python --version

其他回答

正确答案(截至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.

在Windows上,用下面的代码创建一个批处理文件:

start cmd /k "C:\Anaconda3\Scripts\activate.bat C:\Anaconda3 & activate env"

引号中包含的第一个路径是Anaconda安装中activate.bat文件的路径。系统上的路径可能不同。activate命令后面的名称当然应该是您想要的环境名称。

然后在需要打开Anaconda提示时运行批处理文件。

对于Jupyter和Windows用户,您可以将Jupyter Notebook (anaconda3)快捷方式中的目标路径从C:\Users\<YourUserName>\anaconda3更改为C:\Users\<YourUserName>\anaconda3\envs\<YourEnvironmentName>

你也可以对Anaconda Prompt做同样的事情,等等。

在改变路径之后,您可以通过在Jupyter中打开一个终端并运行conda info——envs来检查您的活动环境。

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

我修改了我的路径变量,这样我想要的默认环境比实际的默认环境具有优先级。

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

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

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

如果您只是想暂时转换到另一个环境,请使用

source activate environment-name

ETA:这个可能不推荐。我认为当前正确的命令是:

source conda activate environment-name

(可以使用conda create创建environment-name)


要永久地更改,除了创建一个运行上述代码的启动脚本外,没有其他方法。


通常情况下,最好是创造新的环境。但是,如果你真的想在默认环境下更改Python版本,你可以这样做:

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

conda update conda

然后运行

conda install python=3.5

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

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