Необязательная установка с помощью pip — пример ipython

В документации Ipython упоминается, что существуют разные команды для установки Ipython с помощью pip, Например:

pip install "ipython[all]"

pip install "ipython[terminal]"

pip install "ipython[parallel]"

pip install "ipython[notebook]"

Как это работает? Как я могу использовать такие «опции» для другого пакета.


person paugier    schedule 25.03.2015    source источник
comment
Это extras. Их можно указать в setup.py: pythonhosted .org/setuptools/   -  person cel    schedule 25.03.2015
comment
Если мой ответ поможет, не забудьте принять его. Спасибо!   -  person Stephen Lin    schedule 26.03.2015


Ответы (1)


Вы можете проверить setup.py в ipython-3.0.0.

extras_require = dict(
    parallel = [pyzmq],
    qtconsole = [pyzmq, 'pygments'],
    doc = ['Sphinx>=1.1', 'numpydoc'],
    test = ['nose>=0.10.1', 'requests'],
    terminal = [],
    nbformat = ['jsonschema>=2.0'],
    notebook = ['tornado>=4.0', pyzmq, 'jinja2', 'pygments', 'mistune>=0.5'],
    nbconvert = ['pygments', 'jinja2', 'mistune>=0.3.1']
)

Например, если вы введете pip install "ipython[parallel]", pip перейдет на PyPi для найдите этот пакет и скачайте его.

Поэтому, если вы хотите применить подобную команду к другим пакетам, вы должны убедиться, что в его setup.py есть что-то подобное.

person Stephen Lin    schedule 25.03.2015