将Conda环境文件和Pip结合使用时,运行Pip安装时Conda环境是否处于活动状态?

时间:2019-12-22 11:17:42

标签: python pip anaconda conda

我同时使用pipconda为我的项目安装依赖项。我将希望通过conda安装的依赖项保存在environment.yml文件中,并将我通过pip安装的依赖项保存在requirements.txt文件中(我从{{ 1}}文件)。这是repo,其中包含实际的配置文件以供参考。

从安装日志中可以看到environment.yml首先运行命令

conda

,并将$ conda env create --prefix ./env --file environment.yml 命令作为子进程运行。但是我从日志中无法了解运行pip install命令之前是否已临时激活环境。

我可以通过运行以下命令(在删除pip文件中对requirements.txt文件的引用之后)来显式强制所需的行为

environment.yml

但是我想知道这是否已经在“幕后”发生了。

1 个答案:

答案 0 :(得分:1)

在environment.yml文件本身中,您也可以修改pip软件包。您无需为pip软件包创建单独的requirements.txt文件。

通常一个environment.yml文件包含以下字段:

名称:conda环境名称

频道:需要从中安装依赖项的频道

依赖性::软件包列表。在那你也可以提到点子依赖

有关更多详细信息,您可以引用以下网址:

https://docs.conda.io/projects/conda/en/latest/user-guide/tasks/manage-environments.html#create-env-file-manually

https://docs.conda.io/projects/conda/en/latest/user-guide/tasks/manage-environments.html#create-env-from-file

pip依赖关系将安装在conda环境中,您无需激活环境并手动安装pip依赖关系。 创建conda环境的命令:

conda env create -f environment.yml

上述命令成功完成后,您可以激活环境并按如下所示检查已安装的软件包:

conda activate <env_name>
conda list