🐍 Python : Modules

Les modules en Python permettent d'organiser votre code, de réutiliser des fonctions existantes et d'étendre les fonctionnalités grâce à des bibliothèques externes. Cette fiche présente les méthodes essentielles pour importer, créer et utiliser des modules Python efficacement.

📑 Sommaire

📥 Importer un module

Les modules sont importés à l'aide du mot-clé import :

import math

# Utiliser les fonctions du module
resultat = math.sqrt(16)
print(resultat)  # Affiche : 4.0

# Accéder aux constantes
print(math.pi)   # Affiche : 3.141592653589793

📛 Importer une fonction spécifique

Vous pouvez importer uniquement les fonctions dont vous avez besoin :

from math import sqrt, pi

# Utilisation directe sans préfixe
resultat = sqrt(16)
print(resultat)      # Affiche : 4.0
print(pi)            # Affiche : 3.141592653589793

Pour importer toutes les fonctions d'un module (à utiliser avec précaution) :

from math import *

# Utilisable directement 
print(sqrt(16))      # Affiche : 4.0
print(cos(0))        # Affiche : 1.0

🧾 Renommer un module

Vous pouvez créer un alias pour un module à l'aide de as :

import numpy as np

# Utilisation avec l'alias
tableau = np.array([1, 2, 3])
print(tableau)       # Affiche : [1 2 3]
print(type(tableau)) # Affiche : 

C'est particulièrement utile pour les modules avec des noms longs ou couramment utilisés avec des conventions d'alias (comme numpy → np, pandas → pd).

🧠 Créer son propre module

Créez un fichier Python qui contiendra vos fonctions et classes :

# fichier: mon_module.py
def saluer(nom="visiteur"):
    """Affiche un message de salutation."""
    return f"Bonjour, {nom} !"

def addition(a, b):
    """Additionne deux nombres."""
    return a + b

# Variables dans le module
PI = 3.14159
VERSION = "1.0.0"

Puis importez-le dans votre script principal :

# fichier: principal.py
import mon_module

message = mon_module.saluer("Guillaume")
print(message)                           # Affiche : Bonjour, Guillaume !
print(mon_module.addition(5, 3))         # Affiche : 8
print(f"Version: {mon_module.VERSION}")  # Affiche : Version: 1.0.0

📦 Installer un module externe

Utilisez pip, le gestionnaire de paquets Python, pour installer des modules tiers :

# Dans le terminal ou l'invite de commandes
pip install requests

# Pour une version spécifique
pip install requests==2.28.1

# Pour mettre à jour un module
pip install --upgrade requests

Puis utilisez le module dans votre code :

import requests

response = requests.get('https://api.github.com')
print(f"Statut: {response.status_code}")
print(response.json())
🎁 Bonus : Techniques avancées

Structure de package

Organisez vos modules dans une structure de package :

mon_package/
├── __init__.py
├── module1.py
├── module2.py
└── sous_package/
    ├── __init__.py
    └── module3.py

Le fichier __init__.py peut être vide ou contenir du code d'initialisation.

Importation relative

# Dans module2.py
from . import module1  # Import relatif dans le même package
from .sous_package import module3  # Import relatif d'un sous-package

Contrôler ce qui est importé avec __all__

# Dans mon_module.py
__all__ = ['saluer', 'addition']  # Limite ce qui est importé avec from mon_module import *

Environnements virtuels

Isolez vos dépendances avec des environnements virtuels :

# Création d'un environnement virtuel
python -m venv mon_env

# Activation (Windows)
mon_env\Scripts\activate

# Activation (Linux/Mac)
source mon_env/bin/activate

# Installation des dépendances
pip install -r requirements.txt
🏠 Retour au sommaire général