Exercice 26 / 100

Gestion d'erreurs try/except

Divise 10 par 0 en gerant l erreur avec try/except. Affiche le resultat ou "Impossible de diviser par zero!"

Certaines opérations en Python peuvent provoquer une erreur (= une exception) qui arrête immédiatement le programme. try/except permet d'attraper l'erreur pour décider quoi faire à la place.

Syntaxe

try: # code qui peut planter except NomDeLException: # code exécuté SI l'erreur indiquée se produit

Exceptions courantes

ZeroDivisionError → division par 0 (10 / 0) ValueError → conversion impossible (int('abc')) TypeError → mauvais type ('a' + 1) KeyError → clé absente d'un dict (d['inconnu']) IndexError → index hors limite (lst[99]) FileNotFoundError → fichier introuvable

Exemple : diviser sans planter

try: a = 10 b = 0 print(a / b) except ZeroDivisionError: print('Impossible de diviser par zéro !')

Déroulement

1. Python exécute le code du try 2. À a/b, ZeroDivisionError survient 3. Python saute IMMÉDIATEMENT au except correspondant 4. Le print du try qui suivrait est ignoré
try exécute son bloc, et à la première erreur Python saute aussitôt au except correspondant : la fin du bloc try est ignorée

Plusieurs except + else + finally

try: ... except ValueError: ... # si ValueError except (TypeError, KeyError): ... # si TypeError OU KeyError else: ... # exécuté UNIQUEMENT si pas d'erreur finally: ... # TOUJOURS exécuté (erreur ou pas)

Évite à tout prix le except: vide ou except Exception:. Tu attraperais toutes les erreurs, y compris des bugs, sans savoir lesquels. Précise toujours l'exception attendue.

exercise.py

Envie d'aller plus loin ? Découvrez nos formations certifiées Bac+2 à Bac+5 →