7.5 Recherche de modules
Objectifs d'apprentissage
À la fin de cette section, vous devriez être capable de :
- Expliquer les différences entre la bibliothèque standard et PyPI.
- Rechercher des modules d'intérêt sur python.org et pypi.org.
Modules intégrés
La bibliothèque standard de Python (Python Standard Library) est un ensemble de fonctions intégrées et de modules prenant en charge les tâches courantes de programmation. Ex. : le module math fournit des fonctions comme sqrt() et des constantes comme pi. La documentation officielle de Python comprend une référence de la bibliothèque et un index des modules pour se familiariser avec la bibliothèque standard.
Depuis des décennies, Python applique la philosophie des « batteries incluses ». Cette philosophie signifie que la bibliothèque standard doit être fournie avec tout ce dont la plupart des programmeurs ont besoin. En fait, la bibliothèque standard comprend plus de 200 modules intégrés !
| Module | Description |
|---|---|
|
Fonctions générales liées au calendrier. |
|
Types et fonctions de base pour la date et l'heure. |
|
Générer et traiter des messages électroniques. |
|
Fonctions et constantes mathématiques. |
|
Interagir avec le système d'exploitation. |
|
Générer des nombres pseudo-aléatoires. |
|
Fonctions de statistiques mathématiques. |
|
Paramètres et fonctions spécifiques au système. |
|
Environnement éducatif pour le dessin graphique simple. |
|
Lire et écrire des fichiers d'archives au format ZIP. |
Concepts en pratique
Modules intégrés
Utilisez la référence de la bibliothèque, l'index des modules et les liens de documentation ci-dessus pour répondre aux questions.
Modules tiers
Le Python Package Index (PyPI), disponible sur pypi.org, est la bibliothèque logicielle tierce officielle pour Python. L'abréviation « PyPI » se prononce « paï-pi-aï » (en anglais pie pea eye) (par opposition à PyPy, un projet différent).
PyPI permet à quiconque de développer et de partager des modules avec la communauté Python. Les auteurs de modules comprennent des particuliers, de grandes entreprises et des organisations à but non lucratif. PyPI aide les programmeurs à installer des modules et à recevoir des mises à jour.
La plupart des logiciels disponibles sur PyPI sont libres et open source. PyPI est soutenu par la Python Software Foundation et est maintenu par un groupe indépendant de développeurs.
| Module | Description |
|---|---|
|
Convertir et formater des dates, des heures et des horodatages. |
|
Extraire des données de documents HTML et XML. |
|
Graphiques interactifs et applications dans le navigateur. |
|
Visualisations statiques, animées et interactives. |
|
Montage, composition et traitement vidéo. |
|
Boîte à outils de traitement automatique du langage naturel pour les langues humaines. |
|
Paquet fondamental pour le calcul numérique. |
|
Bibliothèque d'analyse de données, de séries temporelles et de statistiques. |
|
Traitement d'images pour les formats jpg, png et autres. |
|
Outil de test complet et cadre de test unitaire. |
|
Bibliothèque HTTP élégante pour se connecter à des serveurs web. |
|
Outils simples et efficaces pour l'analyse prédictive de données. |
|
Algorithmes fondamentaux pour le calcul scientifique. |
|
Explorer des sites web et extraire des données de pages web. |
|
Plateforme d'apprentissage automatique de bout en bout pour tous. |
Concepts en pratique
Modules tiers
Utilisez pypi.org et les liens du tableau ci-dessus pour répondre aux questions.
Pour aller plus loin
Les blogs de programmation mettent souvent en avant des modules PyPI pour illustrer l'utilité de Python. Les exemples suivants fournissent des informations contextuelles supplémentaires sur les modules répertoriés ci-dessus.
À vous d'essayer
Joyeux anniversaire
Les pages de documentation des modules contiennent souvent des exemples pour aider les programmeurs à se familiariser avec le module. Pour cet exercice, consultez les exemples suivants tirés de la documentation du module datetime :
Écrivez un programme qui crée un objet date représentant votre date de naissance. Obtenez ensuite un objet date représentant la date d'aujourd'hui (la date à laquelle le programme est exécuté). Calculez la différence entre les deux dates et affichez les résultats sous le format suivant :
Your birth date: 2005-03-14
Today's date is: 2023-06-01
You were born 6653 days ago
(that is 574819200 seconds)
You are about 18 years old
À vous d'essayer
Âge plus précis
Le module datetime ne fournit pas de méthode intégrée pour afficher l'âge exact d'une personne. Ex. : le programme suivant calcule un âge exact (en années et en jours) à l'aide de la division entière et du modulo. La sortie est : You are 15 years and 4 days old.
from datetime import date
birth = date(2005, 3, 14)
today = date(2020, 3, 14) # 15 years later
delta = today - birth
years = delta.days // 365
days = delta.days % 365
print("You are", years, "years and", days, "days old")
Remarquez comment les années bissextiles sont prises en compte dans le calcul. Le 29 février apparaît quatre fois entre birth et today. Par conséquent, l'utilisateur a non seulement 15 ans, mais 15 ans et 4 jours.
De nombreux modules couramment utilisés de PyPI, y compris arrow, sont installés dans le shell Python à l'adresse python.org/shell. Ouvrez le shell Python et saisissez les lignes suivantes :
import arrow
birth = arrow.get(2005, 3, 14)
birth.humanize()
Consultez les exemples de humanize() dans la documentation du module arrow. Dans le shell Python, trouvez comment afficher le nombre d'années et de jours écoulés depuis birth en utilisant une seule ligne de code. Affichez ensuite le nombre d'années, de mois et de jours écoulés depuis birth. Enfin, utilisez la fonction print() pour afficher les résultats sous ce format : You are 18 years 4 months and 7 days old.
Si le temps le permet, expérimentez d'autres fonctions fournies par le module arrow.