PaliSkill
Python intermédiaire

Leçon 3 / 9 — Chapitre 5: Gestion des erreurs

except générique et ordre des blocs

Un except sans type précisé intercepte n'importe quelle erreur — pratique en dernier recours, mais à utiliser avec prudence : il peut masquer une erreur inattendue qu'on aurait préféré voir apparaître pour la corriger.

try:
    resultat = 10 / 0
except Exception:
    print("Une erreur est survenue")

Exception est la classe dont héritent (notion vue plus tard dans Python Avancé) presque toutes les erreurs Python ; l'intercepter revient à tout attraper.

Règle importante sur l'ordre : Python teste les blocs except dans l'ordre où ils sont écrits, et exécute le premier qui correspond. Un except Exception générique doit donc toujours être placé en dernier, après les blocs plus précis — sinon il intercepterait tout avant même que les blocs suivants ne soient examinés, les rendant inutiles.

try:
    resultat = 10 / 0
except ZeroDivisionError:
    print("Division par zero")
except Exception:
    print("Autre erreur")

Ce code affiche Division par zero : le bloc précis est testé en premier et correspond, donc le bloc générique n'est jamais atteint.

À vous de jouer : écrivez un try avec un except ZeroDivisionError précis suivi d'un except Exception générique, et vérifiez lequel des deux s'exécute sur une division par zéro.

🔒

Continuez ce module

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

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

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

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