Python intermédiaire
Fonctions avancées, dictionnaires, fichiers, erreurs et modules
Objectif pédagogique
À la fin de ce module, vous saurez manipuler des dictionnaires et structures de données, écrire des fonctions avancées, lire et écrire des fichiers, gérer les erreurs et organiser votre code en modules.
Chapitres
Dictionnaires et structures de données
Un dictionnaire associe des clés à des valeurs : contrairement à une liste, on n'accède pas à un élément par sa position, mais par…
Voir les détails du chapitre
- Les dictionnaires : créer et accéder à une valeur
- Ajouter, modifier et supprimer une entrée
- Vérifier l'existence d'une clé avec in
- Parcourir un dictionnaire : .items(), .keys(), .values()
- La méthode .get() : accéder sans erreur
- Dictionnaires imbriqués
- Listes de dictionnaires
- Dictionnaire de listes
- Fusionner deux dictionnaires
- Cas pratique : organiser un petit catalogue de produits
Fonctions avancées
Un paramètre de fonction peut recevoir une valeur par défaut, utilisée automatiquement si l'appelant ne fournit rien pour ce param…
Voir les détails du chapitre
- Paramètres avec valeur par défaut
- Appeler une fonction avec des arguments nommés
- Renvoyer plusieurs valeurs avec return
- *args et **kwargs : un nombre variable d'arguments
- Les fonctions lambda
- map() et filter() : appliquer une fonction à toute une liste
- Fonctions imbriquées
- Passer une fonction en argument d'une autre fonction
- Cas pratique : un petit module de facturation
Compréhensions et tri de données
Une compréhension de liste construit une nouvelle liste en une seule ligne, à partir d'une liste existante, sans ecrire de boucle…
Voir les détails du chapitre
- Compréhensions de liste : la syntaxe de base
- Compréhension de liste avec condition (filtre)
- if / else à l'intérieur d'une compréhension de liste
- Compréhension de dictionnaire
- Compréhension imbriquée sur une liste de listes
- Trier une liste complexe avec sorted() et key=
- Trier en ordre décroissant et selon plusieurs critères
- min() et max() avec key=
- Cas pratique : filtrer et trier un petit catalogue
Fichiers et formats de données
La fonction ouvre un fichier et renvoie un objet fichier, sur lequel on peut ensuite appeler des méthodes comme pour récupérer tou…
Voir les détails du chapitre
- Lire un fichier texte avec open() et read()
- Lire un fichier ligne par ligne avec une boucle for
- Le mot-clé with : fermeture automatique d'un fichier
- Écrire dans un fichier avec write() (mode 'w' vs 'a')
- Lire un fichier CSV avec le module csv
- csv.DictReader : lire un CSV avec des noms de colonnes
- Écrire un fichier CSV avec csv.writer
- Le module json : json.dumps() et json.loads()
- Lire et écrire un fichier JSON avec json.load() et json.dump()
- Cas pratique : sauvegarder et recharger un inventaire en JSON
Gestion des erreurs
Une erreur non gérée arrête immédiatement l'exécution du programme. Le bloc / permet d'intercepter une erreur et de continuer l'ex…
Voir les détails du chapitre
- try / except : intercepter une erreur
- except avec plusieurs types d'erreurs
- except générique et ordre des blocs
- else : du code qui s'exécute seulement si tout va bien
- finally : du code qui s'exécute toujours
- Récupérer le message d'erreur avec as
- Lever une exception avec raise
- Créer une exception personnalisée simple
- Cas pratique : un petit programme robuste
Chaînes avancées et formatage
Une fstring (vue dans Python Débutant) accepte des options de formatage après un , à l'intérieur des accolades — la première utile…
Voir les détails du chapitre
- Formatage avancé des f-strings : largeur et alignement
- Formatage avancé des f-strings : décimales et pourcentages
- .center(), .ljust() et .rjust()
- .zfill(), .capitalize() et .title()
- Vérifier le contenu d'une chaîne : .isdigit(), .isalpha(), .isupper()
- Introduction aux expressions régulières : re.search()
- re.findall() : trouver toutes les correspondances
- re.sub() : remplacer avec une expression régulière
- Cas pratique : valider et formater des données saisies
Modules, portée et fermetures
Un module est un fichier Python contenant des fonctions et des valeurs réutilisables. rend tout le module accessible, chaque fonct…
Voir les détails du chapitre
- Importer un module : import et from ... import
- Le module random : randint, choice, shuffle
- Le module datetime : date du jour et calculs de dates
- Portée locale et globale : approfondissement
- Le mot-clé global : modifier une variable globale
- Closures : une fonction qui se souvient de son contexte
- Le mot-clé nonlocal
- Modules utiles : math et os.path
- Cas pratique : un générateur de mots de passe avec compteur
Mise en pratique : gestion de stock
Ce chapitre construit progressivement un petit programme de gestion de stock, en réutilisant les notions des chapitres précédents.…
Voir les détails du chapitre
- Charger un inventaire depuis un fichier JSON
- Afficher l'inventaire formaté en colonnes
- Ajouter un nouveau produit à l'inventaire
- Mettre à jour la quantité d'un produit
- Rechercher un produit par nom, insensible à la casse
- Lister les produits en rupture de stock
- Calculer la valeur totale de l'inventaire
- Trier l'inventaire par valeur de stock décroissante
- Sauvegarder l'inventaire modifié dans le fichier JSON
- Cas pratique : un mini-programme de gestion de stock complet
Mise en pratique : carnet de contacts
Ce chapitre construit un minicarnet de contacts, en réutilisant les notions des chapitres précédents. Première étape : charger la…
Voir les détails du chapitre
- Charger des contacts depuis un fichier CSV
- Structurer un contact en dictionnaire imbriqué
- Ajouter un nouveau contact avec validation de saisie
- Rechercher un contact par nom, insensible à la casse
- Modifier les informations d'un contact existant
- Supprimer un contact avec confirmation
- Valider un numéro de téléphone avec une expression régulière
- Trier les contacts par nom
- Exporter les contacts vers un fichier CSV
- Cas pratique : un mini-carnet de contacts complet
Mise en pratique : suivi de dépenses
Ce dernier chapitre construit un minitableau de bord de dépenses, en réutilisant l'essentiel des notions de ce module. Première ét…
Voir les détails du chapitre
- Charger les dépenses depuis un fichier JSON
- Ajouter une nouvelle dépense avec la date du jour
- Filtrer les dépenses par catégorie
- Calculer le total des dépenses par catégorie
- Trouver la dépense la plus élevée
- Trier les dépenses par montant décroissant
- Calculer un budget restant et alerter si dépassé
- Générer un résumé formaté en colonnes
- Sauvegarder les dépenses mises à jour
- Cas pratique : un mini-tableau de bord de dépenses
Progression du module
0/95 terminées
Ce module inclut
- ✓ 95 leçons · durée estimée ~16.5h
- ✓ 190 exercices pratiques corrigés
- ✓ Quiz de révision par chapitre
- ✓ Quiz de fin de module
- ✓ Certificat de réussite vérifiable
- ✓ Accès permanent une fois débloqué
Votre certificat
Terminez ce module pour débloquer votre certification vérifiable.
Accès complet
La première leçon de chaque chapitre est gratuite (10 leçons sur 95).
2 500 XOF / 3,81 € / 4,15 $
Débloquez les 85 leçons restantes de ce module