【问题标题】:Conda: syntax of the environment yaml file vs. venv requirementsConda:环境 yaml 文件的语法与 venv 要求
【发布时间】:2021-12-11 16:34:48
【问题描述】:

我有一个 venv 需求文本文件,用于为 pip 创建虚拟环境。

我现在想根据 pip 的需求文件在 conda 中设置一个环境。 但是,有几行我不知道如何从 pip 到 conda 语法“移植”。 如果我采取这样的行:

scipy>=1.4.1

并以这种方式将其复制到 conda yaml 文件中:

dependencies:
    - scipy>=1.4.1

它们工作正常。 但是在需求文件中有这样的行:

openexr==1.3.2; platform_system == 'Linux'
dataclasses>=0.8; python_version == '3.6'

如果我尝试以相同的方式复制它们,它们会出错。

CondaValueError: invalid package specification: openexr==1.3.2; platform_system == 'Linux'

“翻译”这些行的正确语法是什么?

【问题讨论】:

    标签: python anaconda yaml conda virtual-environment


    【解决方案1】:

    Conda 已经知道您的平台,因此第一行仅保留 openexr 规范。对于第二个,Conda 管理 Python,因此 Python 版本规范可以显式包含在单独的行中。总而言之,像

    dependencies:
      - python=3.6
      - scipy>=1.4.1
      - openexpr=1.3.2
      - dataclasses>=0.8
    

    【讨论】:

    • 太好了,谢谢。这就是我凭直觉所做的,但我找不到任何文档来支持这种直觉。
    猜你喜欢
    • 1970-01-01
    • 2022-11-11
    • 2017-11-28
    • 2022-11-07
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多