如何更改现有conda虚拟环境的Python版本?

150

我创建了一个Python版本为3.8的conda环境,但它不支持matplotlib...因此我正在寻找像这样改变Python版本的方法:conda env my_env update to python=3.6。这可能吗?还是我需要重新创建环境?

我安装了Miniconda。


谢谢您的提问。在尝试在带有Python 3.8的conda环境中安装keras时,遇到了CUDA驱动程序的UnsatisfiableError错误。更改为Python v. 3.7解决了这个问题。 - arun
4个回答

252

激活相关环境,然后安装您需要的Python版本。

conda activate my_env
conda install python=3.6

6
哦,这很明显......我唯一的借口是我完全不懂这个。谢谢! - elixirtrip
29
我已完成此操作,但版本仍未更改。 - B.Quaink
4
@B.Quaink听起来很不可能。如果属实,请创建一个新的帖子,提供您所采取的确切步骤(包括操作系统),然后提供链接。 - Alexander
1
如果执行此操作后版本号未更改,请重新启动您的 shell。 - forgetso
17
我必须运行conda uninstall python才能安装新的版本。否则,旧版本不会更新。 - Josiah Coad
显示剩余9条评论

32

在上面的回答中补充

conda activate my_env
conda uninstall python
conda install python=x.x

卸载并重新安装Python而不仅仅是升级它的任何解释? - EMT
1
没有特别的,现有的解决方案对我不起作用,这个可以,所以觉得分享一下 :)。我想升级也应该可以。 - jacktim
这导致我失去了所有的包,最好创建一个新的环境。 - Jeff Bezos
@JeffBezos 一些初步的研究表明这不应该是这种情况。https://dev59.com/R2gu5IYBdhLWcg3winrU:~:text=%40patelshahrukh%20uninstalling%20python%20DOES%20NOT,那就需要更多的工作来修复。我会测试一下,如果可以的话,我会更新答案让大家知道。 - jacktim

6
重建一个新的环境,例如命名为“myenvi”。
conda create --name myenvi python=3.6

请确保版本是通过

python --version

安装所有软件包后,请进行如下双重检查:

conda list -n myenvi

25
虽然你的方法解决了问题,但是提问者要求一种能够保留现有环境的方法。所以,这个答案在这里并没有真正帮助到他们。 - kyriakosSt

2
如果您已经在其他环境中安装了Python,您可以将其用作基础。以下是需要执行的步骤:
conda activate base
conda install python=3.6

注意:这将激活根环境,并且如果已经安装了Python 3.6,则会简单地替换它。

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