PaliSkill
Python avancé

Leçon 6 / 10 — Chapitre 8: Structurer et tester un projet

Le module logging plutôt que print()

print() convient pour explorer ou déboguer rapidement, mais devient limité dans un vrai programme : impossible de distinguer un message d'information d'une véritable erreur, ni de désactiver certains messages sans supprimer le code. Le module logging répond à ce besoin avec des niveaux de gravité.

import logging

logging.basicConfig(level=logging.INFO)

logging.debug("Detail technique")
logging.info("Traitement demarre")
logging.warning("Stock faible")
logging.error("Echec du traitement")

Ce code affiche les trois derniers messages (info, warning, error), mais pas debug : level=logging.INFO fixe le niveau minimal affiché, et DEBUG est en dessous d'INFO dans l'échelle de gravité (DEBUG < INFO < WARNING < ERROR < CRITICAL) — seuls les messages de niveau égal ou supérieur au seuil configuré s'affichent.

Chaque message affiché précise aussi automatiquement son niveau, sans avoir à l'écrire soi-même dans le texte :

WARNING:root:Stock faible
ERROR:root:Echec du traitement

Changer level=logging.WARNING masquerait aussi les messages info, sans toucher au code des appels logging.info(...) eux-mêmes — un ajustement centralisé, impossible à obtenir aussi simplement avec de simples appels à print().

À vous de jouer : configurez logging avec level=logging.WARNING, puis appelez logging.info(...) et logging.error(...), et observez lequel des deux s'affiche.

🔒

Continuez ce module

Débloquez les leçons restantes ainsi que la certification finale.

2 500 XOF / 3,81 € / 4,15 $

Débloquez les 87 leçons restantes de ce module

Votre paiement est vérifié avant l'activation de l'accès