簡體   English   中英

合並 Conda 環境文件和 Pip 時,運行 Pip install 時 Conda 環境是否處於活動狀態?

[英]When combining Conda environment files and Pip, is Conda evironment active when Pip install is run?

我同時使用pipconda為我的項目安裝依賴項。 我將我希望通過conda安裝的依賴項保留在environment.yml文件中,並將我通過pip安裝的依賴項保留在requirements.txt文件(我從environment.yml文件中引用)中。 這是帶有實際配置文件的repo以供參考。

從安裝日志看來, conda首先運行命令

$ conda env create --prefix ./env --file environment.yml

並將pip install命令作為子進程運行。 但是我從日志中不明白在運行pip命令之前是否已經臨時激活了環境。

我可以通過運行以下命令明確強制所需的行為(在刪除environment.yml文件中的requirements.txt文件之后)

$ conda env create --prefix ./env --file environment.yml
$ conda activate ./env
$ pip install -r requirements.txt

但我想知道這是否是“幕后”已經發生的事情。

在 environment.yml 文件本身中,您也可以提及 pip 包。您不需要為 pip 包創建單獨的 requirements.txt 文件。

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

name : conda 環境名稱

channel :需要安裝依賴項的通道

依賴項:: : 包列表。 您也可以提及 pip 依賴項

有關更多詳細信息,您可以參考以下網址:

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

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM