Gérer les erreurs : try, except
12 min · Intermédiaire · 7 août 2026
Une erreur qui arrête tout, par défaut
resultat = 10 / 0
# ZeroDivisionError: division by zero
# Le programme s'arrete ici, la suite ne s'execute jamais Intercepter une erreur précise
try:
resultat = 10 / 0
except ZeroDivisionError:
print("Division par zero evitee")
resultat = None
print("Le programme continue normalement") Le bloc try contient l’instruction risquée. Si l’erreur indiquée après except survient, Python exécute ce bloc à la place de laisser le programme s’arrêter, puis continue normalement après.
Attention
Cibler except ZeroDivisionError plutôt qu’un except générique évite de masquer une erreur totalement différente (une faute de frappe dans un nom de variable, par exemple), qui devrait au contraire apparaître clairement plutôt que d’être avalée silencieusement.
Plusieurs types d’erreurs, plusieurs except
valeurs = ["10", "0", "abc"]
for valeur in valeurs:
try:
print(100 / int(valeur))
except ZeroDivisionError:
print("Impossible de diviser par zero")
except ValueError:
print(f"'{valeur}' n'est pas un nombre valide") À toi de jouer
Écris une fonction diviser_en_securite(a, b) qui renvoie a / b, ou None si b vaut 0, sans jamais laisser le programme planter.
def diviser_en_securite(a, b):
# Renvoie a / b, ou None si b vaut 0
pass