Comment gérer les erreurs et les exceptions en Python ?
Gérer les erreurs et exceptions en Python consiste à utiliser des blocs try-except et try-finally pour anticiper et réagir aux erreurs de manière contrôlée. Les exceptions sont des erreurs détectées lors de l'exécution du code.
Avec try-except
try:
result = 10 / 0
except ZeroDivisionError:
result = None
print("Erreur: Division par zéro.")
Dans cet exemple, nous tentons de diviser par zéro, ce qui entraîne une exception ZeroDivisionError. Au lieu d'arrêter l'exécution du programme, l'exception est capturée et traitée dans le bloc except, permettant au programme de continuer.
Avec try-except-else
try:
result = 10 / 2
except ZeroDivisionError:
result = None
print("Erreur: Division par zéro.")
else:
print("La division a réussi.")
Un bloc else peut être ajouté pour exécuter du code quand aucune exception n'est levée.
Dans cet exemple, la division réussit et le message "La division a réussi." s'affiche.
Avec try-finally
try:
file = open("example.txt", "r")
content = file.read()
except FileNotFoundError:
print("Erreur: Fichier introuvable.")
finally:
if 'file' in locals():
file.close()
Le bloc finally s'exécute toujours, indépendamment de la présence d'une exception.
Ici, il assure que le fichier est fermé même si une exception FileNotFoundError a été levée.