• 6 heures
  • Facile

Ce cours est visible gratuitement en ligne.

course.header.alt.is_video

course.header.alt.is_certifying

J'ai tout compris !

Mis à jour le 07/03/2022

Gérez des paquets Python

Connectez-vous ou inscrivez-vous gratuitement pour bénéficier de toutes les fonctionnalités de ce cours !

Installez et utilisez un paquet Python

Une fois que vous avez trouvé un paquet Python qui vous intéresse, vous pouvez utiliser la commande pip install <package> pour l'installer. Nous utiliserons le paquet matplotlib  : un paquet permettant de dessiner des graphiques.

Créez un fichier appelé generate_graph.py et écrivez-y ce code :

import matplotlib.pyplot as plt
plt.figure()
plt.plot([1, 2, 3, 4, 5])
plt.show()

 Dans votre terminal, placez-vous dans le répertoire dans lequel vous avez créé le fichier (à l’aide de la commande cd  ), puis exécutez la commande python generate_graph.py  . Si la commande s'exécute correctement et que le script génère un graphique, cela signifie que vous avez déjà installé le paquet matplotlib  .

Si le script ne s'exécute pas correctement, vous recevez probablement un message d'erreur semblable à celui-ci :

$ python generate_graph.py
Error processing line 1 of /Users/george/anaconda3/lib/python3.7/site-packages/matplotlib-3.0.2-py3.7-nspkg.pth:

Traceback (most recent call last):
File "/Users/george/anaconda3/lib/python3.7/site.py", line 168, in addpackage
exec(line)
File "<string>", line 1, in <module>
File "<frozen importlib._bootstrap>", line 580, in module_from_spec
AttributeError: 'NoneType' object has no attribute 'loader'

Remainder of file ignored
Traceback (most recent call last):
File "generate_graph.py", line 1, in <module>
import matplotlib.pyplot as plt
ModuleNotFoundError: No module named 'matplotlib'

Dans ce cas, vous devez installer le paquet matplotlib  à l'aide de   pip install matplotlib :

$ pip install matplotlib
Collecting matplotlib
Using cached https://files.pythonhosted.org/packages/4a/5c/ced2e398aad26b24a7beaa2b22830811dfc953c73a0b3b930e26c12d1d19/matplotlib-3.2.2-cp37-cp37m-macosx_10_9_x86_64.whl
Requirement already satisfied: numpy>=1.11 in 
./anaconda3/lib/python3.7/site-packages (from matplotlib) (1.18.4)
Requirement already satisfied: kiwisolver>=1.0.1 in 
./anaconda3/lib/python3.7/site-packages (from matplotlib) (1.0.1)
Requirement already satisfied: python-dateutil>=2.1 in 
./anaconda3/lib/python3.7/site-packages (from matplotlib) (2.7.5)
Requirement already satisfied: cycler>=0.10 in 
./anaconda3/lib/python3.7/site-packages (from matplotlib) (0.10.0)
Requirement already satisfied: pyparsing!=2.0.4,!=2.1.2,!=2.1.6,>=2.0.1 in ./anaconda3/lib/python3.7/site-packages (from matplotlib) (2.3.0)
Requirement already satisfied: setuptools in 
./anaconda3/lib/python3.7/site-packages (from kiwisolver>=1.0.1->matplotlib) (40.6.3)
Requirement already satisfied: six>=1.5 in 
./anaconda3/lib/python3.7/site-packages (from python-dateutil>=2.1->matplotlib) (1.12.0)
Installing collected packages: matplotlib
Successfully installed matplotlib-3.2.2

Maintenant, si vous essayez d'exécuter votre script generate_graph.py à l'aide de   python generate_graph.py , le graphique suivant doit apparaître. 🧙‍♀️

Graphique généré par le script
Graphique généré par le script

Félicitations, vous avez correctement installé et utilisé votre premier paquet Python,   matplotlib  . 👏

Pour vérifier votre installation de matplotlib  , utilisez la vidéo suivante :

Vérifiez quels paquets vous avez installés

Pour vérifier les paquets Python que vous avez installés, vous pouvez exécuter deux commandes différentes dans votre terminal : pip list ou  pip freeze  . pip list répertorie tous les paquets que vous avez installés (et leurs dépendances) dans un format intelligible :

$ pip list
Package                            Version   Location
---------------------------------- --------- ------------------------------------------------------------
alabaster                          0.7.12
anaconda-client                    1.7.2
anaconda-navigator                 1.9.6
anaconda-project                   0.8.2
appnope                            0.1.0
appscript                          1.0.1
asn1crypto                         0.24.0
aspy.yaml                          1.3.0
astroid                            2.1.0
astropy                            3.1
atomicwrites                       1.2.1
attrs                              18.2.0
awscli                             1.16.168
Babel                              2.6.0
backcall                           0.1.0
backports.os                       0.1.1
backports.shutil-get-terminal-size 1.0.0
bcrypt                             3.1.6
...

J'ai raccourci le résultat ci-dessus en coupant après le paquet bcrypt  car cela prend trop de place, mais vous avez sans doute compris le principe !   pip freeze répertorie les paquets que vous avez installés (mais pas leurs dépendances) dans un format adapté au stockage dans un fichier (souvent appelé fichier requirements.txt ), dont nous parlerons plus en détail ultérieurement. Démonstration :

$ pip freeze
alabaster==0.7.12
anaconda-client==1.7.2
anaconda-navigator==1.9.6
anaconda-project==0.8.2
appnope==0.1.0
appscript==1.0.1
asn1crypto==0.24.0
aspy.yaml==1.3.0
astroid==2.1.0
astropy==3.1
atomicwrites==1.2.1
attrs==18.2.0
awscli==1.16.168
Babel==2.6.0
backcall==0.1.0
backports.os==0.1.1
backports.shutil-get-terminal-size==1.0.0
bcrypt==3.1.6
...

Une autre commande intéressante avec pip estpip show <package(s)>  , qui vous montre des informations utiles sur un ou plusieurs paquets que vous avez installés. Par exemple, pour avoir plus d'informations sur le paquet requests , j'exécute la commande suivante :

$ pip show requests
Name: requests
Version: 2.23.0
Summary: Python HTTP for Humans.
Home-page: https://requests.readthedocs.io
Author: Kenneth Reitz
Author-email: me@kennethreitz.org
License: Apache 2.0
Location: /Users/george/anaconda3/lib/python3.7/site-packages
Requires: urllib3, idna, certifi, chardet
Required-by: Sphinx, conda, conda-build, anaconda-project, anaconda-client

Je peux utiliser pip show  pour obtenir des informations sur plusieurs paquets, en séparant les noms des paquets par des espaces :

 $ pip show requests numpy pandas
Name: requests
Version: 2.23.0
Summary: Python HTTP for Humans.
Home-page: https://requests.readthedocs.io
Author: Kenneth Reitz
Author-email: me@kennethreitz.org
License: Apache 2.0
Location: /Users/george/anaconda3/lib/python3.7/site-packages
Requires: idna, certifi, chardet, urllib3
Required-by: Sphinx, conda, conda-build, anaconda-project, anaconda-client
---
Name: numpy
Version: 1.18.4
Summary: NumPy is the fundamental package for array computing with Python.
Home-page: https://www.numpy.org
Author: Travis E. Oliphant et al.
Author-email: None
License: BSD
Location: /Users/george/anaconda3/lib/python3.7/site-packages
Requires:
Required-by: tables, seaborn, scikit-learn, PyWavelets, pytest-doctestplus, pytest-arraydiff, patsy, pandas, odo, numexpr, numba, mkl-random, mkl-fft, matplotlib, h5py, datashape, Bottleneck, bokeh, bkcharts, astropy
---
Name: pandas
Version: 0.23.4
Summary: Powerful data structures for data analysis, time series, and statistics
Home-page: http://pandas.pydata.org
Author: None
Author-email: None
License: BSD
Location: /Users/george/anaconda3/lib/python3.7/site-packages
Requires: python-dateutil, pytz, numpy
Required-by: seaborn, odo

Si vous voulez en savoir un peu plus sur l'installation de paquets et leur utilisation dans des scripts, ou si vous n'avez pas réussi à utiliser pip  pour afficher ou répertorier vos paquets, la vidéo suivante vous donnera quelques indications supplémentaires :

Exercice

Vous travaillez en tant que spécialiste en marketing dans une entreprise ! 😎

Votre directeur a récemment essayé d'apprendre Python, car il pense pouvoir l'utiliser pour automatiser certaines tâches répétitives. Il vous a envoyé un script Python qu'il veut que vous essayiez d'exécuter, mais il vient d'entrer en réunion et n'est pas disponible.

Téléchargez ce script et essayez de l'exécuter : p1c2s2_script.py

S'il s'exécute correctement dès la première fois, c'est parfait, vous n'avez pas besoin d'essayer autre chose ! Cependant, si ce n'est pas le cas, vous allez devoir rechercher dans PyPI les paquets que vous devez installer, puis exécuter le script correctement !

En résumé

  •  !pip install <package>!  permet d'installer des paquets Python à partir de la ligne de commande.

  • Une fois que vous avez installé un paquet Python, vous pouvez utiliser la commande   !import!  pour l'importer dans un script Python et utiliser ses fonctionnalités.

  •  !pip!  dispose de différentes commandes qui vous permettent de voir les paquets actuellement installés.

Maintenant que vous êtes prêt à installer et à utiliser des paquets Python, examinons de plus près les différentes méthodes d'installation des paquets et modules, et à quel moment les utiliser.

Exemple de certificat de réussite
Exemple de certificat de réussite