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