Comprendre les erreurs Python courantes
SyntaxError, IndentationError, NameError… apprends à les déchiffrer.
Les erreurs Python : amies, pas ennemies !
Quand Python ne comprend pas ton code, il affiche une erreur. C'est normal et c'est utile : ça t'indique où regarder.
SyntaxError — faute de syntaxe
if age > 10 # ❌ il manque le ":"
print("ok")
Python dit : SyntaxError: expected ':'
→ tu as oublié un caractère obligatoire (souvent :, parenthèse, guillemet).
IndentationError — mauvaise indentation
if age > 10:
print("ok") # ❌ pas indenté
→ il faut 4 espaces (ou une tabulation) avant les lignes d'un bloc.
NameError — variable inconnue
print(prnom) # ❌ on a écrit "prnom" au lieu de "prenom"
NameError: name 'prnom' is not defined
→ vérifie l'orthographe et que la variable a bien été créée avant.
TypeError — types incompatibles
"Age : " + 10 # ❌ on ne peut pas additionner str et int
→ convertis avec str(10) : "Age : " + str(10).
ValueError — valeur impossible
int("salut") # ❌ "salut" n'est pas un nombre
IndexError / KeyError
liste = [1, 2, 3]
print(liste[10]) # ❌ IndexError, la liste a 3 éléments
dico = {"a": 1}
print(dico["b"]) # ❌ KeyError, "b" n'existe pas
Lire un message d'erreur
Traceback (most recent call last):
File "monfichier.py", line 4, in <module>
print(prnom)
NameError: name 'prnom' is not defined
- Dernière ligne = type d'erreur + message → c'est l'essentiel.
line 4= la ligne fautive dans ton fichier.
💡 Astuce du débogueur en herbe : ajoute des
print(variable)un peu partout pour voir où ça coince.
🧪 Quiz de validation
Réponds à toutes les questions. Il faut 70% de bonnes réponses pour valider le tuto !
🔒 Tu dois être connecté pour passer le quiz.