将 requirements.txt 转换为 Conda 环境文件的策略

Strategies To Convert requirements.txt to a Conda Environment File

获取 requirements.txt 文件或获取 pip freeze 的结果并将其转换为 conda 环境文件的好策略是什么?例如,理想的最终结果是采用固定 pip 版本的 requirements.txt,并在 dependencies 下具有 conda 兼容版本,而不是在 pip.

name: myconverted_condaenv
channels:
  - conda-forge
dependencies:
   <all packages installed via pip>

此外,有些软件包可能无法在通过 pip 安装的 conda 中使用。这个问题的最终目标是了解如何帮助某人快速转换他们的设置以使用 conda,而无需进行大量手动调整。

所以,事实证明已经有很好的答案可以帮助我完成我需要的事情。 展示了如何在没有任何锁定版本的情况下获取包。

pip freeze | sed s/=.*// > packages.txt

这个 展示了一个很棒的循环,它将尽可能通过 conda 安装所有内容,否则使用 pip。

FOR /F "delims=~" %f in (requirements.txt) DO conda install --yes "%f" || pip install "%f"

然后要生成可以保存在源代码管理中的实际 conda 文件,以便可以从中创建新环境,您可以 运行

conda env export