Fondamentaux de la Gestion des Erreurs en Python : Prévention des Plantages du Code
La gestion des erreurs est une compétence essentielle pour tout programmeur, car elle permet à vos programmes de réagir de manière appropriée aux problèmes inattendus. Ce chapitre aborde les types d’erreurs et d’exceptions que vous pouvez rencontrer ainsi que la manière de les gérer à l’aide des blocs try et except.
Types d’erreurs et d’exceptions en Python
Python classe les erreurs en deux catégories principales : les erreurs de syntaxe et les exceptions.
Erreurs de syntaxe
Les erreurs de syntaxe se produisent lorsque l’analyseur détecte une instruction incorrecte. Cela peut être une faute de frappe, une parenthèse manquante ou une indentation incorrecte. Voici un exemple :
1print("Hello world"
Cela entraînera une erreur de syntaxe (SyntaxError) car la parenthèse fermante est manquante.
Exceptions ou erreurs d’exécution
Les exceptions sont des erreurs détectées lors de l’exécution. Les exceptions courantes incluent :
- IndexError : tentative d’accès à un indice inexistant ;
- ValueError : passage d’un argument avec une valeur incorrecte ;
- TypeError : incompatibilité de type de données, comme additionner une chaîne de caractères à un entier ;
- ZeroDivisionError : division d’un nombre par zéro ;
- FileNotFoundError : tentative d’accès à un fichier inexistant.
Voici une hiérarchie d'exceptions où chaque erreur de niveau inférieur hérite de celle située au-dessus. Cela signifie que si vous interceptez une exception de niveau supérieur, telle que Exception, elle capturera également toutes les erreurs « enfant » dérivées. Il n'est pas nécessaire de connaître chaque erreur individuellement, mais celles mises en surbrillance en jaune sont les plus courantes et il est particulièrement important de les connaître.
Le bloc try, except
Pour gérer efficacement les exceptions, Python utilise les blocs try et except. Cela permet au programme de continuer même si une erreur se produit.
Exemple de bloc try, except
1234567try: # Attempt to divide by zero result = 10 / 0 print("The result is", result) except ZeroDivisionError: # This code runs if the ZeroDivisionError is raised print("Attempted to divide by zero.")
Si la division était possible (c'est-à-dire, si l'on divise par un nombre autre que zéro), l'instruction print à l'intérieur du bloc try s'exécuterait et le bloc except serait ignoré. Le bloc except ne s'exécute que lorsque l'erreur spécifique qu'il est conçu pour intercepter est levée.
Swipe to start coding
Écrire un script qui gère différents types d’erreurs à l’aide d’opérations de base.
#Utilisez les commentaires comme astuces pour résoudre cette tâche 😉
Solution
Merci pour vos commentaires !
single
Demandez à l'IA
Demandez à l'IA
Posez n'importe quelle question ou essayez l'une des questions suggérées pour commencer notre discussion
Awesome!
Completion rate improved to 3.13
Fondamentaux de la Gestion des Erreurs en Python : Prévention des Plantages du Code
Glissez pour afficher le menu
La gestion des erreurs est une compétence essentielle pour tout programmeur, car elle permet à vos programmes de réagir de manière appropriée aux problèmes inattendus. Ce chapitre aborde les types d’erreurs et d’exceptions que vous pouvez rencontrer ainsi que la manière de les gérer à l’aide des blocs try et except.
Types d’erreurs et d’exceptions en Python
Python classe les erreurs en deux catégories principales : les erreurs de syntaxe et les exceptions.
Erreurs de syntaxe
Les erreurs de syntaxe se produisent lorsque l’analyseur détecte une instruction incorrecte. Cela peut être une faute de frappe, une parenthèse manquante ou une indentation incorrecte. Voici un exemple :
1print("Hello world"
Cela entraînera une erreur de syntaxe (SyntaxError) car la parenthèse fermante est manquante.
Exceptions ou erreurs d’exécution
Les exceptions sont des erreurs détectées lors de l’exécution. Les exceptions courantes incluent :
- IndexError : tentative d’accès à un indice inexistant ;
- ValueError : passage d’un argument avec une valeur incorrecte ;
- TypeError : incompatibilité de type de données, comme additionner une chaîne de caractères à un entier ;
- ZeroDivisionError : division d’un nombre par zéro ;
- FileNotFoundError : tentative d’accès à un fichier inexistant.
Voici une hiérarchie d'exceptions où chaque erreur de niveau inférieur hérite de celle située au-dessus. Cela signifie que si vous interceptez une exception de niveau supérieur, telle que Exception, elle capturera également toutes les erreurs « enfant » dérivées. Il n'est pas nécessaire de connaître chaque erreur individuellement, mais celles mises en surbrillance en jaune sont les plus courantes et il est particulièrement important de les connaître.
Le bloc try, except
Pour gérer efficacement les exceptions, Python utilise les blocs try et except. Cela permet au programme de continuer même si une erreur se produit.
Exemple de bloc try, except
1234567try: # Attempt to divide by zero result = 10 / 0 print("The result is", result) except ZeroDivisionError: # This code runs if the ZeroDivisionError is raised print("Attempted to divide by zero.")
Si la division était possible (c'est-à-dire, si l'on divise par un nombre autre que zéro), l'instruction print à l'intérieur du bloc try s'exécuterait et le bloc except serait ignoré. Le bloc except ne s'exécute que lorsque l'erreur spécifique qu'il est conçu pour intercepter est levée.
Swipe to start coding
Écrire un script qui gère différents types d’erreurs à l’aide d’opérations de base.
#Utilisez les commentaires comme astuces pour résoudre cette tâche 😉
Solution
Merci pour vos commentaires !
single