pip install |
Installation |
---|---|
pip |
Syntaxe
pip install [options] requirement-specifier [package-index-options] ... |
pip install [options] -r requirements-file [package-index-options] ... |
pip install [options] [-e] vcs-project-url ... |
pip install [options] [-e] local-project-path ... |
pip install [options] archive-url/path ... |
Paramètres
Nom | Description |
---|---|
--abi abi | Ce paramètre permet d'indiquer qu'il ne faut utiliser que des wheel compatibles avec Python abi abi, par exemple «pypy_41». S'il n'est pas spécifié, la balise abi de l'interpréteur actuel est utilisée. Utilisez cette option plusieurs fois pour spécifier plusieurs abi pris en charge par l'interpréteur cible. En règle générale, vous devrez spécifier --implementation, --platform et --python-version lors de l'utilisation de ce paramètre. |
-c file | Ce paramètre permet d'indiquer des contrainte de versions à l'aide du fichier de contraintes spécifié. Ce paramètre peut être utilisée plusieurs fois. |
--compile | Ce paramètre permet de compiler les fichiers source Python en bytecode. |
--constraint file | Ce paramètre permet d'indiquer des contrainte de versions à l'aide du fichier de contraintes spécifié. Ce paramètre peut être utilisée plusieurs fois. |
-e path/url | Ce paramètre permet d'installer un projet en mode modifiable (c'est-à-dire setuptools en mode «develop mode») à partir d'un chemin de projet local ou d'une url VCS. |
--editable path/url | Ce paramètre permet d'installer un projet en mode modifiable (c'est-à-dire setuptools en mode «develop mode») à partir d'un chemin de projet local ou d'une url VCS. |
--extra-index-url url | Ce paramètre permet d'indiquer l'URL supplémentaires des index de paquet à utiliser en plus de --index-url. Doit suivre les mêmes règles que --index-url. |
-f url | Ce paramètre permet de rechercher un lien URL. S'il s'agit d'une URL ou d'un chemin vers un fichier html, recherchez des liens vers des archives telles que des fichiers sdist (.tar.gz) ou wheel (.whl). S'il s'agit d'un chemin local ou d'une URL de file:// étant un répertoire, recherchez les archives dans la liste des répertoires. Les liens vers les URL de projet VCS ne sont pas pris en charge. |
--find-links url | Ce paramètre permet de rechercher un lien URL. S'il s'agit d'une URL ou d'un chemin vers un fichier html, recherchez des liens vers des archives telles que des fichiers sdist (.tar.gz) ou wheel (.whl). S'il s'agit d'un chemin local ou d'une URL de file:// étant un répertoire, recherchez les archives dans la liste des répertoires. Les liens vers les URL de projet VCS ne sont pas pris en charge. |
--force-reinstall | Ce paramètre permet de réinstaller tous les paquets même s'ils sont déjà à jour. |
--global-option options | Ce paramètres permet d'indiquer les options globales supplémentaires à fournir à l'appel setup.py avant la commande d'installation. |
-I | Ce paramètre permet d'ignorer les paquets installés et de les écraser. Il peut casser votre système si le paquet existant est d'une version différente ou a été installé avec un gestionnaire de paquets différent ! |
-i url | Ce paramètre permet d'indiquer l'URL de base de l'index de paquet Python (https://pypi.org/simple par défaut). Il doit pointer vers un référentiel conforme à PEP 503 (l'API de référentiel simple) ou un répertoire local présenté dans le même format. |
--ignore-installed | Ce paramètre permet d'ignorer les paquets installés et de les écraser. Il peut casser votre système si le paquet existant est d'une version différente ou a été installé avec un gestionnaire de paquets différent ! |
--ignore-requires-python | Ce paramètre permet d'ignorer les informations Requires-Python. |
--implementation implementation | Ce paramètre permet d'indiquer qu'il ne faut utiliser que des wheel compatibles avec la mise en oeuvre Python implementation, par exemple «pp», «jy», «cp» ou «ip». S'il n'est pas spécifié, la mise en oeuvre actuelle de l'interpréteur est utilisée. Utilisez «py» pour forcer des wheel indépendantes de la mise en oeuvre. |
--index-url url | Ce paramètre permet d'indiquer l'URL de base de l'index de paquet Python (https://pypi.org/simple par défaut). Il doit pointer vers un référentiel conforme à PEP 503 (l'API de référentiel simple) ou un répertoire local présenté dans le même format. |
--install-option options | Ce paramètre permet d'indiquer les paramètres supplémentaires à fournir à la commande d'installation setup.py (utilisez comme --install-option="--install-scripts=/usr/local/bin"). Utilisez plusieurs paramètres --install-option pour transmettre plusieurs options à setup.py install. Si vous utilisez un paramètre avec un chemin de répertoire, vous devez utiliser un chemin absolu. |
--no-binary format_control | Ce paramètre permet d'indiquer qu'il ne faut pas utiliser de paquets binaires. Peut être fourni plusieurs fois et chaque fois ajoute à la valeur existante. Accepte soit «:all:» pour désactiver tous les paquets binaires, «:none:» pour vider l'ensemble (notez les deux-points), ou un ou plusieurs noms de paquet avec des virgules entre eux (pas de deux-points). Notez que certains paquets sont difficiles à compiler et peuvent échouer à s'installer lorsque cette option est utilisée sur eux. |
--no-build-isolation | Ce paramètre permet de désactiver l'isolation lors de la création d'une distribution source moderne. Les dépendances de construction spécifiées par PEP 518 doivent être déjà installées si ce paramètre est utilisée. |
--no-clean | Ce paramètre permet d'indiquer qu'il ne faut pas nettoyer les répertoires de compilation. |
--no-compile | Ce paramètre permet de ne pas compiler les fichiers source Python en bytecode. |
--no-deps | Ce paramètre permet de ne pas installer les dépendances de paquet. |
--no-index | Ce paramètre permet d'ignorer l'index du paquet (en regardant uniquement les URL --find-links à la place). |
--no-warn-conflicts | Ce paramètre permet d'indiquer qu'il ne faut pas avertir des dépendances brisées. |
--no-warn-script-location | Ce paramètre permet d'indiquer qu'il ne faut pas envoyer d'avertissement lors de l'installation de scripts en dehors de PATH. |
--only-binary format_control | Ce paramètre permet d'indiquer qu'il ne faut pas utiliser de paquets sources. Peut être fourni plusieurs fois et chaque fois ajoute à la valeur existante. Accepte soit «:all:» pour désactiver tous les paquets source, «:none:» pour vider l'ensemble, ou un ou plusieurs noms de paquet avec des virgules entre eux. Les paquets sans distributions binaires échoueront à s'installer lorsque c paramètre est utilisée sur eux. |
--platform platform | Ce paramètre permet d'indiquer qu'il ne faut utiliser que le wheel compatibles avec platform. Par défaut, la plate-forme du système en cours d'exécution. Utilisez ce paramètres plusieurs fois pour spécifier plusieurs plates-formes prises en charge par l'interpréteur cible. |
--pre | Ce paramètre permet d'inclure les versions préliminaires et de développement. Par défaut, pip ne trouve que les versions stables. |
--prefer-binary | Ce paramètre permet d'indiquer qu'il est préférable d'utiliser les anciens paquets binaires aux paquets sources plus récents. |
--prefix dir | Ce paramètre permet d'indiquer le préfixe d'installation où sont placés lib, bin et autres dossiers de niveau supérieur. |
--progress-bar progress_bar | Ce paramètre permet d'indiquer le type de progression à afficher. [off|on|ascii|pretty|emoji]. La valeur par défaut est «on». |
--python-version python_version | Ce paramètre permet d'indiquer la version de l'interpréteur Python à utiliser pour les contrôles de compatibilité wheel et «Requires-Python». La valeur par défaut est une version dérivée de l'interpréteur en cours d'exécution. La version peut être spécifiée en utilisant jusqu'à trois entiers séparés par des points (par exemple «3» pour 3.0.0, «3.7» pour 3.7.0 ou «3.7.3»). Une version majeure-mineure peut également être donnée sous forme de chaîne sans points (par exemple «37» pour 3.7.0). |
-r file | Ce paramètre permet d'indiquer de l'installer à partir du fichier d'exigences spécifié. Ce paramètre peut être utilisée plusieurs fois. |
--require-hashes | Ce paramètre permet d'exiger un hachage pour vérifier chaque exigence, pour des installations répétables. Ce paramètre est implicite lorsqu'un paquet dans un fichier d'exigences a un paramètre --hash. |
--requirement file | Ce paramètre permet d'indiquer de l'installer à partir du fichier d'exigences spécifié. Ce paramètre peut être utilisée plusieurs fois. |
--root dir | Ce paramètre permet d'installer tout ce qui concerne ce répertoire racine alternatif. |
--src dir | Ce paramètre permet d'indiquer le répertoire dans lequel extraire les projets modifiables. La valeur par défaut dans un virtualenv est «<venv path>/src». La valeur par défaut pour les installations globales est «<current dir>/src». |
-t dir | Ce paramètre permet d'installer les paquets dans dir. Par défaut, cela ne remplacera pas les fichiers / dossiers existants dans dir. Utilisez --upgrade pour remplacer les paquets existants dans dir par de nouvelles versions. |
--target dir | Ce paramètre permet d'installer les paquets dans dir. Par défaut, cela ne remplacera pas les fichiers / dossiers existants dans dir. Utilisez --upgrade pour remplacer les paquets existants dans dir par de nouvelles versions. |
-U | Ce paramètre permet de mettre à niveau tous les paquets spécifiés vers la dernière version disponible. La gestion des dépendances dépend de la stratégie de mise à niveau utilisée. |
--upgrade | Ce paramètre permet de mettre à niveau tous les paquets spécifiés vers la dernière version disponible. La gestion des dépendances dépend de la stratégie de mise à niveau utilisée. |
--upgrade-strategy upgrade_strategy | Ce paramètre permet de déterminer comment la mise à niveau des dépendances doit être gérée [par défaut, la valeur est only-if-needed]. «eager» - les dépendances sont mises à niveau, que la version actuellement installée réponde aux exigences du ou des paquets mis à niveau. «only-if-needed» - sont mis à niveau uniquement lorsqu'ils ne satisfont pas aux exigences du ou des paquets mis à niveau. |
--use-pep517 | Ce paramètre permet d'utiliser PEP 517 pour créer des distributions source (utilisez --no-use-pep517 pour forcer le comportement hérité). |
--user | Ce paramètre permet d'indiquer qu'il faut l'installer dans le répertoire d'installation utilisateur Python de votre plate-forme. Généralement ~/.local/, ou %APPDATA%Python sous Windows. |
Description
Cette commande permet d'installer les paquets à partir de PyPI (et d'autres index) utilisant des spécificateurs d'exigences, l'URL du projet VCS, des répertoires de projets locaux ou d'archives sources locales ou à distances.
Remarques
- La commande pip install prend également en charge le téléchargement à partir de «fichiers d'exigences», fournissant un moyen simple de spécifier tout un environnement à télécharger.
- La commande pip install comporte plusieurs étapes : identifier les exigences de base, la résolution des dépendances, la construction de wheel, toutes les dépendances pouvant être sont intégrées dans wheel et l'installation des paquets (et désinstallez tout ce étant mis à niveau / remplacé).
- Notez que pip install préfère laisser la version installée telle quelle, sauf si le paramètre --upgrade est spécifié.
- Traitement des paramètres : Lorsqu'il examine les éléments à installer, pip vérifie le type d'élément de chacun, dans l'ordre suivant : URL du projet ou de l'archive, le répertoire local (devant contenir un setup.py, ou pip signalera une erreur), un fichier local (une archive au format sdist ou wheel, suivant les conventions de dénomination de ces formats) et une exigence, comme spécifié dans la PEP 440. Chaque élément identifié est ajouté à l'ensemble des exigences à satisfaire par l'installation.
- Élaboration du nom et de la version : Pour chaque élément candidat, pip doit connaître le nom et la version du projet. Pour les wheel (identifiées par l'extension de fichier .whl), il peut être obtenu à partir du nom de fichier, conformément à la spécification Wheel. Pour les répertoires locaux ou les fichiers sdist explicitement spécifiés, la commande setup.py egg_info est utilisée pour déterminer les métadonnées du projet. Pour les sdists localisés via un index, le nom de fichier est analysé pour le nom et la version du projet (c'est en théorie un peu moins fiable que d'utiliser la commande egg_info, mais évite de télécharger et de traiter des nombres inutiles de fichiers). Toute URL peut utiliser la syntaxe #egg=name pour indiquer explicitement le nom du projet.
- Satisfaire les exigences : Une fois que pip a l'ensemble des exigences à satisfaire, il choisit la version de chaque exigence à installer en utilisant la règle simple selon laquelle la dernière version satisfaisant les contraintes données sera installée (mais avec une exception concernant les versions préliminaires). Lorsque plus d'une source de la version choisie est disponible, on suppose que n'importe quelle source est acceptable (sinon les versions seraient différentes).
- À partir de la v6.1.0, pip installe les dépendances avant leurs dépendants, c'est-à-dire dans l'ordre topologique. Il s'agit du seul engagement actuellement pris par pip concernant la commande. Bien qu'il puisse être vrai par hasard que pip installera les choses dans l'ordre des paramètres d'installation ou dans l'ordre des éléments dans un fichier d'exigences, ce n'est pas garantie. Dans le cas d'un cycle de dépendance (dépendance circulaire), la mis en oeuvre actuelle (pouvant éventuellement changer plus tard) l'a telle que le premier membre rencontré du cycle est installé en dernier.
- Avant la v6.1.0, pip ne prenait aucun engagement concernant l'ordre d'installation. La décision d'installer topologiquement est basée sur le principe que les installations doivent se dérouler de manière à laisser l'environnement utilisable à chaque étape. Il présente deux avantages pratiques principaux : l'utilisation simultanée de l'environnement pendant l'installation est plus susceptible de fonctionner et une installation échouée est moins susceptible de laisser un environnement défectueux. Bien que le nouvel ordre d'installation ne vise pas à remplacer (et ne remplace pas) l'utilisation de setup_requires pour déclarer les dépendances de construction, il peut aider certains projets à s'installer à partir de sdist (pouvant échouer auparavant) correspondant au profil suivant : ils ont des dépendances de construction étant également déclarées comme dépendances d'installation à l'aide de install_requires, le python setup.py egg_info fonctionne sans que leurs dépendances de construction soient installées, et ils ne déclarent pas leurs dépendances de construction à l'aide de setup_requires.
- Format de fichier des exigences Chaque ligne du fichier d'exigences indique quelque chose à installer, et comme les paramètres de pip install, les syntaxes suivants sont pris en charge :
- Depuis la version 10, pip prend en charge l'utilisation de variables d'environnement dans le fichier des exigences. Vous pouvez désormais entreposer des données sensibles (jetons, clefs,...) dans des variables d'environnement et ne spécifier que le nom de la variable correspondant à vos besoins, laissant pip rechercher la valeur lors de l'exécution. Cette approche s'aligne sur le modèle de configuration à 12 facteurs couramment utilisé. Vous devez utiliser le format POSIX pour les noms de variables, y compris les crochets autour du nom en majuscule, comme indiqué dans cet exemple : ${API_TOKEN}. Le pip tentera de trouver la variable d'environnement correspondante définie sur le système hôte lors de l'exécution.
[[--option]...] requirement specifier [; markers] [[--option]...] archive url/path [-e] local project path [-e] vcs project url |
Exemples
L'exemple suivant permet d'installer AWS CLI d'Amazon :
pip install awscli --upgrade --user |
L'exemple suivant permet d'installer spécifiquement la version 1.4.3 de Alembic (l'outil de migration de base de données léger à utiliser avec le SQLAlchemy Database Toolkit) :
pip install alembic==1.4.3 |
Les exemples suivants permettent d'installer divers paquets populaires pour Python :
pip install attrs==19.3.0 pip install boto3==1.16.26 pip install botocore==1.19.26 pip install cachetools==4.1.1 pip install certifi==2020.11.8 pip install cffi==1.14.4 pip install cryptography==2.9.2 pip install gitdb==4.0.5 pip install GitPython==3.1.11 pip install google-auth==1.23.0 pip install grpcio==1.33.2 pip install h2==3.2.0 pip install hpack==3.0.0 pip install hstspreload==2020.11.21 pip install httplib2==0.18.1 pip install httpx==0.11.1 pip install hyperframe==5.2.0 pip install importlib-metadata==3.1.0 pip install ipaddress==1.0.23 pip install isodate==0.6.0 pip install jsonpickle==1.4.2 pip install kafka-python==1.4.7 pip install Mako==1.1.3 pip install MarkupSafe==1.1.1 pip install matplotlib==3.3.3 pip install numpy==1.18.5 pip install matplotlib==3.3.3 pip install pika==1.1.0 pip install Pillow==8.0.1 pip install PyJWT==1.7.1 pip install rasa==2.1.2 pip install rasa-sdk==2.1.2 pip install requests==2.25.0 pip install rsa==4.6 pip install sanic==20.3.0 pip install smmap==3.0.4 pip install SQLAlchemy==1.3.20 pip install tensorboard==2.4.0 pip install tensorboard-plugin-wit==1.7.0 pip install tensorflow==2.3.1 pip install tensorflow-addons==0.11.2 pip install tensorflow-estimator==2.3.0 pip install tensorflow-hub==0.9.0 pip install tornado==6.1 pip install tqdm==4.50.2 pip install twilio==6.45.4 pip install ujson==1.35 pip install websockets==8.0.2 pip install smmap==3.0.4 |
Dernière mise à jour : Dimanche, le 17 Janvier 2021