Le fichier __init__.py en Python

Article publié le et mis à jour le .

Le fichier init.py en Python

A quoi sert le fichier __init__.py en Python ? Comment l’utiliser ?

Découvrez comment créer vos propres modules Python avec ce fichier !

Le fichier __init__.py permet de de créer des paquets en Python. Le fichier contient les règles d’initialisation du module qui vont être exécutées quand on l’appelle. Avoir un fichier init permet de l’importer facilement depuis un autre endroit dans un projet Python.

Voyons ensemble plus en details comment ce fichier fonctionne et a quoi il sert !

Qu’est-ce que le fichier __init__.py ?

Le fichier __init__.py permet de transformer un dossier en paquet python. Il peut être vide ou contenir des règles, configuration, variables et fonctions. Il permet d’organiser le code en modules qu’on peut importer plus facilement.

Comment initialiser un paquet en Python ?

Le fichier __init__.py peut être vide ou contenir du code d’initialisation pour le paquet. Le code contenu dans un fichier init sera exécuté automatiquement quand on l’importe ailleurs dans notre code python.

A quoi sert le fichier init.py ?

  • Définir des variables et des fonctions globales pour le paquet.
  • Importer et initialiser d’autres modules du paquet.
  • Définir des points d’entrée pour le paquet (fonctions main).
  • Gérer la configuration du paquet.

Exemple concret d’utilisation du fichier __init__.py

Prenons l’exemple d’un paquet mon_paquet avec les fichiers suivants :

  • mon_paquet/__init__.py
  • mon_paquet/module1.py
  • mon_paquet/module2.py

Le fichier mon_paquet/__init__.py peut contenir :

# Définir une variable globale
VERSION = "1.0.0"

# Importer des modules
from .module1 import fonction1
from .module2 import fonction2

# Définir un point d'entrée
def main():
    print("Ceci est le point d'entrée du paquet")
    fonction1()
    fonction2()

# Exécuter le point d'entrée si le paquet est exécuté directement
if __name__ == "__main__":
    main()

Conseils pour bien utiliser init.py

  • Gardez le fichier __init__.py simple et concis, la plupart du temps il sera vide
  • Utilisez-le pour initialiser le paquet et pas pour implémenter une logique
  • Si vous avez besoin de code plus complexe, placez-le dans des modules séparés, pas dans le fichier

Créez vos propres modules avec le fichier __init__.py

Bravo, vous savez maintenant comment initialiser vos modules python avec le fichier __init__.py !

A vous de l’essayer pour créer des structures de code modulaires, réutilisables et plus faciles à maintenir.