Que signifient les crochets dans pip install?

Je vois de plus en plus de commandes comme ceci:

$ pip install "splinter[django]"

Que font ces crochets?

25
demandé sur Babken Vardanyan 2017-10-16 19:55:18

2 réponses

La syntaxe que vous utilisez est:

pip install "project[extra]"

Dans votre cas, vous êtes installing le paquet splinter qui a le support ajouté pour django. Les crochets ([]) ne sont pas une syntaxe spécifique, juste une convention. Vraiment, vous installez le paquet nommé: "splinter[django]".

Une explication de @chetner:

La commande pip install splinter django installerait deux paquets nommés splinter et django. splinter[django], d'autre part, installe une variante du paquet splinter qui contient support pour django. Notez que cela n'a rien à voir avec le paquet django lui-même, mais qu'il s'agit simplement d'une chaîne définie par le paquet splinter pour un ensemble de fonctionnalités particulier qui est activé.

25
répondu Joe Iddon 2018-08-25 14:05:48

Assez sûr que ce sont des extras setuptools:

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

Parfois, un projet a des dépendances "recommandées", qui ne sont pas requises pour toutes les utilisations du projet. Par exemple, un projet peut offrir une sortie PDF facultative si ReportLab est installé, et la prise en charge de reStructuredText si docutils est installé. Ces fonctionnalités optionnelles sont appelées " extras" ...

0
répondu Paul 2018-06-03 05:25:45