Mon Labo Python

Tableau des messages d'erreur Python fréquents et leur sens

Cette page répertorie les exceptions et erreurs standard les plus couramment rencontrées lors du développement en Python. Elle définit chaque type d'erreur et identifie les causes fréquentes pour faciliter le diagnostic technique et le débogage, conformément aux spécifications de la documentation officielle de Python.

Tableau des messages d'erreur fréquents

Le tableau suivant détaille les erreurs intégrées (built-in exceptions) que le moteur d'exécution Python lève lorsqu'il rencontre une anomalie. Ces erreurs sont classées par leur nom technique tel qu'il apparaît dans la console (traceback).

Nom de l'erreur Description technique Causes fréquentes
SyntaxError Levée lorsque l'analyseur syntaxique rencontre une erreur dans la structure du code (Source). Oubli de deux-points (:) après une instruction if ou def, parenthèses ou guillemets non fermés.
IndentationError Sous-classe de SyntaxError liée à un mauvais alignement des blocs de code (Source). Mélange d'espaces et de tabulations, ou absence d'indentation après une instruction de contrôle.
NameError Levée lorsqu'un identifiant (variable ou fonction) local ou global est introuvable (Source). Utilisation d'une variable avant sa déclaration, ou faute de frappe dans le nom d'une fonction.
TypeError Survient lorsqu'une opération ou une fonction est appliquée à un objet d'un type inapproprié (Source). Tentative d'additionner une chaîne de caractères (str) et un nombre entier (int).
ValueError Levée quand une fonction reçoit un argument du bon type mais avec une valeur inappropriée (Source). Passage d'une chaîne non numérique à la fonction int() (ex: int("abc")).
IndexError Levée lorsqu'un indice de séquence (liste, tuple, chaîne) est hors des limites autorisées (Source). Tentative d'accéder à l'élément liste[10] alors que la liste ne contient que 5 éléments.
KeyError Survient lors de la recherche d'une clé dans un dictionnaire si celle-ci n'existe pas (Source). Accès à mon_dict["cle"] alors que "cle" n'a pas été définie dans le dictionnaire.
AttributeError Levée lorsqu'une référence à un attribut ou une méthode échoue pour un objet donné (Source). Appel de la méthode append() sur une chaîne de caractères au lieu d'une liste.
ModuleNotFoundError Sous-classe de ImportError levée quand un module ne peut pas être localisé (Source). Nom de module mal orthographié dans l'instruction import ou module non installé via pip.
ZeroDivisionError Levée lorsque le deuxième argument d'une division ou d'un modulo est zéro (Source). Calcul arithmétique où le dénominateur est nul (ex: 10 / 0).
FileNotFoundError Levée lorsqu'un fichier ou un répertoire est requis mais n'existe pas (Source). Chemin d'accès erroné ou fichier supprimé lors de l'utilisation de la fonction open().

Structure et hiérarchie des exceptions

En Python, toutes les exceptions intégrées dérivent de la classe de base BaseException. La majorité des erreurs courantes (comme celles listées ci-dessus) héritent spécifiquement de la classe Exception (Source). Cette structure hiérarchique permet aux développeurs de capturer des groupes d'erreurs liés (par exemple, capturer ArithmeticError pour traiter à la fois ZeroDivisionError et OverflowError) ou de créer des exceptions personnalisées par héritage.

Last verified: 2026-06-23

Sources

Articles connexes