Les modules et les packages en Python

Une caractéristique clé de Python est son système de "modules", qui permet aux développeurs de créer des programmes bien structurés et modulaires.

Mais qu'est-ce qu'un module exactement et comment est-il utilisé en Python ?

Qu'est-ce qu'un module en Python ?

En Python, un module est un fichier contenant des définitions de fonctions, de classes et de variables, ainsi que des instructions exécutables.

En d'autres termes, c'est une manière d'organiser le code de manière logique et cohérente.

Le nom du module est dérivé du nom du fichier (sans l'extension .py).

Par exemple, un fichier nommé calcul.py correspondrait au module calcul.

Un des grands avantages des modules en Python est qu'ils permettent le partage et la réutilisation du code.

En effet, une fois qu'un module a été importé, les fonctions, classes et variables qu'il définit peuvent être utilisées dans le code comme s'ils avaient été définis localement.

Voici un exemple simple de module en Python :

# /mon_projet/salutations.py
def dire_bonjour():
    return "Bonjour !"

def dire_bonsoir():
    return "Bonsoir !"

Dans cet exemple, salutations.py est un module qui définit deux fonctions, dire_bonjour et dire_bonsoir.

Comment utiliser les modules en Python

L'utilisation de modules en Python se fait grâce à l'instruction import.

Cette instruction permet d'importer un module et d'utiliser les fonctions, classes et variables qu'il définit.

Voici comment on pourrait utiliser le module salutations défini précédemment :

# importation du module salutations
import salutations

# utilisation des fonctions définies dans le module
print(salutations.dire_bonjour())  # affiche "Bonjour !"
print(salutations.dire_bonsoir())  # affiche "Bonsoir !"

Il est également possible d'importer uniquement certaines fonctions ou classes d'un module, en utilisant la syntaxe from ... import ...

Par exemple :

# importation de la fonction dire_bonjour du module salutations
from salutations import dire_bonjour

# utilisation de la fonction
print(dire_bonjour())  # affiche "Bonjour !"

Il est à noter que Python dispose d'une vaste bibliothèque standard, qui comprend de nombreux modules utiles pour une variété de tâches, allant du traitement de fichiers à la programmation réseau, en passant par l'analyse de données. L'utilisation de ces modules peut considérablement accélérer le processus de développement.

Par exemple, le module math de la bibliothèque standard de Python fournit des fonctions pour diverses opérations mathématiques :

import math

print(math.sqrt(16))  # affiche "4.0", la racine carrée de 16