Python python

Dans ce didacticiel, nous allons apprendre à utiliser pip pour installer et gérer des packages Python.

Qu'est-ce que pip?

pipest le gestionnaire de packages standard pour Python. Nous pouvons utiliser pippour installer des packages supplémentaires qui ne sont pas disponibles dans la bibliothèque standard Python. Par exemple,

 pip install numpy 

Si nous avions installé pipsur notre système, cette commande aurait installé la numpybibliothèque.

Comment installer pip?

pipest pré-installé sur les versions Python 3.4 ou antérieures. Nous pouvons vérifier si pipest installé en utilisant la commande suivante dans la console:

 pip --version 

Si pipest déjà disponible dans le système, la pipversion correspondante est affichée, comme:

 pip 19.3.1 à partir de C: Python37 lib site-packages pip (python 3.7) 

Si nous utilisons une ancienne version de Python ou que nous ne l'avons pas pipinstallée pour une autre raison, suivez les étapes décrites dans ce lien: installation de pip

Utilisation de pip

pipest un programme de ligne de commande. Après son installation, une pipcommande est ajoutée qui peut être utilisée avec l'invite de commande.

La syntaxe de base de pip est:

 pip 

Installer des packages avec pip

Outre la bibliothèque Python standard, la communauté Python contribue à un grand nombre de packages adaptés à divers frameworks de développement, outils et bibliothèques.

La plupart de ces packages sont officiellement hébergés et publiés dans Python Package Index (PyPI). pipnous permet de télécharger et d'installer ces packages.

Installation du package de base

La installcommande utilisée pour installer les packages à l'aide de pip. Prenons un exemple:

Supposons que nous souhaitons installer requestsune bibliothèque HTTP populaire pour Python. Nous pouvons le faire à l'aide de la commande suivante.

 pip install requests 

Production

Collecte des demandes à l'aide de https://files.pythonhosted.org/packages/51/bd/23c926cd341ea6b7dd0b2a00aba99ae0f828be89d72b2190f27c11d4b7fb/requests-2.22.0-py2.py3-none-any.whl Collecting cached chardet = 3.0-any.whl .pythonhosted.org / packages / bc / a9 / 01ffebfb562e4274b6487b4bb1ddec7ca55ec7510b22e4c51f14098443b8 / chardet-3.0.4-py2.py3-none-any.whl Collecting urllib3! = 1.25.0, caché = 1.25.1, en utilisant //files.pythonhosted.org/packages/b4/40/a9837291310ee1ccc242ceb6ebfd9eb21539649f193a7c8c86ba15b98539/urllib3-1.25.7-py2.py3-none-any.whl Collecte d'idna = 2.5 à l'aide de https://files.org mis en cache/ython/14. /2c/cd551d81dbe15200be1cf41cd03869a46fe7226e7450af7a6545bfc474c9/idna-2.8-py2.py3-none-any.whl Collecte de certifi> = 2017.4.17 Téléchargement https: //files.pythonhosted.org / packages / b9 / 63 / df50cac98ea0d5b006c55a399c3bf1db9da7b5a24de7890bc9cfd5dd9e99 / certifi-2019.11.28-py2.py3-none-any.whl (156kB) Installation des paquets collectés: chardet, urllibna-10 demandes correctement installées, certifid8.11, id. 3.0.4 demandes idna-2.8-2.22.0 urllib3-1.25.7

Ici, nous pouvons voir que le pipa été utilisé avec la installcommande suivie du nom du paquet que nous voulons installer ( requests).

Toutes les autres dépendances aiment chardet, urllib3et certifinécessaire pour ce paquet sont également installés par pip.

Spécification de la version du package

Quand pip installest utilisé dans sa forme minimale, piptélécharge la version la plus récente du package.

Parfois, seule une version spécifique est compatible avec d'autres programmes. Ainsi, nous pouvons définir la version du package de la manière suivante:

 demandes d'installation pip == 2.21.0 

Ici, nous avons installé la version 2.11.0 de la requestsbibliothèque.

Liste des packages installés avec pip

La pip listcommande peut être utilisée pour lister tous les packages disponibles dans l'environnement Python actuel.

 pip list 

Production

 Version du paquet ---------- ---------- certifi 2019.11.28 chardet 3.0.4 idna 2.8 pip 19.3.1 demandes 2.22.0 setuptools 45.0.0 urllib3 1.25.7 roue 0.33 .6 

Informations sur le paquet avec pip show

La pip showcommande affiche des informations sur un ou plusieurs packages installés. Regardons un exemple:

 pip show requests 

Production

Nom: demandes Version: 2.22.0 Résumé: HTTP Python pour les humains. Page d'accueil: http://python-requests.org Auteur: Kenneth Reitz Auteur-email: [email protected] Licence: Apache 2.0 Emplacement: c: users dell desktop venv lib site-packages Nécessite: certifi, chardet, urllib3, idna Requis par:

Ici, la showcommande affiche des informations sur la requestsbibliothèque. Notez la colonne Requiert et Requiert par dans la sortie ci-dessus.

La colonne Requiert indique les dépendances requises par la requestsbibliothèque. Et, la colonne Required-by affiche les packages qui nécessitent requests.

Désinstaller un package avec pip

Nous pouvons désinstaller un package en utilisant pipavec la pip uninstallcommande.

Supposons que nous voulions supprimer la requestsbibliothèque de notre environnement Python actuel. Nous pouvons le faire de la manière suivante:

 pip uninstall requests 

Production

Désinstallation de requests-2.22.0: supprimerait: C: Python37 lib site-packages requests-2.22.0.dist-info * C: Python37 lib site-packages requests * Proceed (y / n)? y Requêtes désinstallées avec succès-2.22.0

Comme nous pouvons le voir, le requestspackage est supprimé après l'invite finale.

Note: Even though the specified package is removed, the packages that were installed as dependencies are not removed. In this case, the dependencies (chardet, urllib3, and certifi) of the requests library aren't uninstalled.

If we need to remove the dependencies of a package as well, we can use the pip show command to view installed packages and remove them manually.

Using Requirement Files

A file containing all the package names can also be used to install Python packages in batches.

Let's take a look at an example:

Suppose we have a file requirements.txt which has the following entries:

 numpy Pillow pygame 

We can install all these packages and their dependencies by using a single command in pip.

 pip install -r requirements.txt 

Output

 Collecting numpy Using cached https://files.pythonhosted.org/packages/a9/38/f6d6d8635d496d6b4ed5d8ca4b9f193d0edc59999c3a63779cbc38aa650f/numpy-1.18.1-cp37-cp37m-win_amd64.whl Collecting Pillow Using cached https://files.pythonhosted.org/packages/88/6b/66f502b5ea615f69433ae1e23ec786b2cdadbe41a5cfb1e1fabb4f9c6ce9/Pillow-7.0.0-cp37-cp37m-win_amd64.whl Collecting pygame Using cached https://files.pythonhosted.org/packages/ed/56/b63ab3724acff69f4080e54c4bc5f55d1fbdeeb19b92b70acf45e88a5908/pygame-1.9.6-cp37-cp37m-win_amd64.whl Installing collected packages: numpy, Pillow, pygame Successfully installed Pillow-7.0.0 numpy-1.18.1 pygame-1.9.6 

Here, we have used the same install command with pip.

However, the additional argument -r specifies pip that we are passing a requirements file rather than a package name.

Creating Requirements File

As an alternative to manually creating the requirements file, pip offers the freeze command. Let's look at how to use this command.

Suppose our current Python environment has the following packages. It can be displayed using pip list.

 Package Version ---------- ------- numpy 1.17.0 Pillow 6.1.0 pip 19.3.1 pygame 1.9.6 setuptools 45.0.0 wheel 0.33.6 

The packages that don't come preinstalled will Python are listed using the freeze command.

 pip freeze 

Output

 numpy==1.17.0 Pillow==6.1.0 pygame==1.9.6 

The pip freeze command displays the packages and their version in the format of the requirements file.

So this output can be redirected to create a requirements file using the following command:

 pip freeze> requirements.txt 

A new requirements.txt file is created in the working directory. It can later be used in other Python environments to install specific versions of packages.

Search packages in pip

The search command is used to search for packages in the command prompt. Let's look at an example:

 pip search pygame 

Output

 pygame-anisprite (1.0.0) - Animated sprites for PyGame! pygame-ai (0.1.2) - Videogame AI package for PyGame pygame-engine (0.0.6) - Simple pygame game engine. pygame-assets (0.1) - Assets manager for Pygame apps pygame-gui (0.4.2) - A GUI module for pygame 2 pygame-spritesheet (0.2.0) - Python pygame extension that provides SpriteSheet class. pygame-minesweeper (1.0) - Minesweeper game implemented in python using pygame pygame-menu (2.1.0) - A menu for pygame, simple, lightweight and easy to use pygame-plot (0.1) - Quick visualization of data using pygame with a matplotlib style pygame (1.9.6) - Python Game Development… 

Here, we have searched for a library called pygame. All other packages that match the keyword are displayed. This command is helpful for finding related packages.

Pour en savoir plus pip, visitez: Python pip (documentation officielle)

Articles intéressants...