代码之家  ›  专栏  ›  技术社区  ›  rawwar

在pip install-e中,[dev]是什么意思。[dev][duplicate]

  •  0
  • rawwar  · 技术社区  · 6 年前

    我看到越来越多这样的命令:

    $ pip install "splinter[django]"
    

    这些方括号是做什么的?

    0 回复  |  直到 6 年前
        1
  •  42
  •   user743436    6 年前

    您使用的语法是:

    pip install "project[extra]"
    

    在你的情况下,你是 installing 这个 splinter 添加了对 django . 方括号( [] )不是特定的语法,只是约定。实际上,您正在安装名为: "splinter[django]" .

    来自的解释 @chetner :

    命令 pip install splinter django 将安装两个名为 裂片 丹戈 . splinter[django] 另一方面,安装 裂片 包含 支持 对于 丹戈 . 注意,这与 丹戈 包本身,但只是由 裂片 已启用的特定功能集的包。

        2
  •  5
  •   Paul    7 年前

    很确定这些是setuptools附加功能:

    https://setuptools.readthedocs.io/en/latest/setuptools.html#declaring-extras-optional-features-with-their-own-dependencies

    有时,项目具有“推荐的”依赖项,而这些依赖项不是项目所有用途所必需的。例如,如果安装了reportlab,项目可能会提供可选的pdf输出;如果安装了docutils,项目可能会重新构造文本支持。这些可选功能称为“附加功能”…

        3
  •  1
  •   prosti    6 年前

    这正是 setup.py 项目的文件 question :

    "django": ["Django>=1.7.11;python_version<'3.0'", "Django>=2.0.6;python_version>'3.3'", "lxml>=2.3.6", "cssselect", "six"],