新创建的conda envs是否继承了基础环境中的所有包?

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了新创建的conda envs是否继承了基础环境中的所有包?相关的知识,希望对你有一定的参考价值。

我安装了Anaconda并创建了一个新的env(“dell_proj”)。然后我用我的新环境在Pycharm中创建了一个新项目。我的期望是我只能在这个项目中使用我通过Conda在该特定环境中安装的软件包,但是,我能够使用在Base环境中安装的所有软件包。

Packages shown available in Conda for env

Packages shown available in Pycharm for env

有人可以解释一下我在这里的误解吗?

答案

您可以使用conda create --name dell_proj --clone root创建基本环境的克隆。这将创建一个新环境,它是基础环境的副本。

如果使用conda create --name dell_proj之类的东西创建新环境,它将不会从基础环境继承包。您必须使用conda install安装所需的软件包。

另一答案

我在Python 3中使用Anaconda x64-4.4.0。我创建了一个新的Python 2环境,它只导入了一些基本包。所以似乎答案取决于环境的创建方式。

另一答案

在Windows中,您创建一个环境而不指定python版本,然后它将创建包含所有基础包的新环境。我不知道它是否是一个bug或一个功能,但这适用于Windows。

conda create -n new_env

创建一个包含基础包的环境

conda create -n new_env python=3.7 

仅使用下面给出的一些必要包创建新环境

ca-certificates    
certifi            
openssl            
pip                
python             
setuptools         
sqlite             
vc                 
vs2015_runtime     
wheel              
wincertstore       

以上是关于新创建的conda envs是否继承了基础环境中的所有包?的主要内容,如果未能解决你的问题,请参考以下文章

conda 迁移环境

刷新或检测 conda 环境

conda创建指定路径里面的虚拟环境

conda 用法

Conda usage

conda 环境可以继承基础包吗?