Créer des modules importables
Pourboire
Pour plus d’informations, consultez l’onglet Texte et images !
Une fois que votre programme comporte plus qu’une poignée de fonctions, il devient difficile de s’y retrouver si tout est regroupé dans un seul fichier. Python résout cela avec des modules. Un module est simplement un .py fichier dont les fonctions et les variables peuvent être réutilisées à partir d’autres fichiers.
Création de votre propre module
Tout fichier Python que vous écrivez peut être importé en tant que module. Le nom du module est le nom du fichier sans l’extension .py .
Supposons que vous disposiez de ce fichier : math_utils.py
# math_utils.py
def add(a, b):
return a + b
def multiply(a, b):
return a * b
Importation d’un module
À partir d’un autre fichier dans le même dossier, vous pouvez importer math_utils et utiliser ses fonctions :
# app.py
import math_utils
print(math_utils.add(2, 3)) # Output: 5
print(math_utils.multiply(4, 5)) # Output: 20
Importation de noms spécifiques
Si vous n’avez besoin que de quelques éléments à partir d’un module, vous pouvez les importer par nom. Cette syntaxe vous permet de les utiliser sans préfixe de module :
from math_utils import add, multiply
print(add(2, 3)) # Output: 5
print(multiply(4, 5)) # Output: 20
Utilisation d’un alias
Si un nom de module est long ou se heurte à un autre nom, vous pouvez lui donner un alias plus court avec as:
import math_utils as mu
print(mu.add(2, 3)) # Output: 5
Vous verrez souvent ce modèle avec des bibliothèques tierces, par exemple import pandas as pd.
Le bloc if __name__ == "__main__":
Lorsque vous import un fichier, Python exécute le code qu’il contient. Si vous souhaitez inclure du code qui ne doit s’exécuter que lorsque le fichier est exécuté directement, placez-le dans un if __name__ == "__main__": bloc :
# math_utils.py
def add(a, b):
return a + b
if __name__ == "__main__":
# Quick self-test — only runs when this file is executed directly
print(add(2, 3))
Ce modèle permet à un fichier de fonctionner à la fois en tant que script autonome et en tant que module importable.
Pourquoi les modules importent
- Ils veillent à ce que chaque fichier se concentre sur une seule responsabilité.
- Ils facilitent le test du code, car les fonctions vivent dans un seul endroit.
- Ils le rendent naturel pour partager et réutiliser du code entre les projets.