我在 4 个月前完全切换到 Linux。我已经能够在我的 Ubuntu 20.04 中安装 Anaconda,但我观察到一些令人头疼的事情。
设置环境后,我需要将它使用的 Python 版本从 3.10 更改为 3.8。所以我使用了这些命令:
conda activate my_env
conda install python=3.8
这是在 Anaconda 中执行此操作的标准方式。
然而,我观察到它会将新的 Python 3.8 包下载到环境中,尽管我的系统上已经预装了 Python 3.8。
如何配置我的conda
环境以使用系统上已安装的现有 Python 版本,而无需从 Internet 下载副本?
您观察到的是正确的,并且正是
conda
应该如何工作。使用命令
conda activate my_env
,conda install python=3.8
您首先告诉conda
激活名为的虚拟环境my_env
,然后在其中安装 Python 3.8。虚拟环境是一个环境(将其视为一个特殊文件夹),用于安装 Python(或其他受支持的语言)以及包及其依赖项,独立于主操作系统。它最大的优点是安装的所有包都不会影响操作系统预装的包,因此可以单独处理(更新、降级、删除等),有效消除主系统由于不满足的依赖关系等。特别是在 Python 的情况下,这是用户最终导致系统损坏的最常见原因之一。
因此,在您想在 中使用 Python 3.8 的情况下,
my_env
必须再次下载 Python 3.8,因为如前所述,环境的 Python 版本独立于主操作系统的版本。您不能,或者更好的是,您不应该在您的虚拟环境中使用系统安装,因为这将违背最初拥有虚拟环境的目的,并且很容易导致系统损坏。