Introduction à la gestion des exceptions Python
Les exceptions sont gérées en python en utilisant deux techniques principales, elles sont une assertion et une gestion des exceptions. Nous discuterons des techniques de gestion des exceptions python dans ce chapitre
Tout événement qui dévie l'exécution normale du flux de programme est appelé une exception. Le bloc Try contient des codes de génération d'erreur possibles. La mise en ordre et la gestion de ces exceptions est un processus effectué par le bloc except qui est inséré à la fin de chaque bloc try. Un seul bloc try peut associer plus d'une exception à un moment donné, le bloc else se trouvant dans la section de flux de programme habituelle. Tout le code où aucune protection contre les blocages d'essai n'est nécessaire est placé dans le bloc else du programme.
Syntaxe:
try: Executes when suspicious code is executed
except Exception1: Executed when
exception 1 is raised
except Exception2: Executed when exception 2 is raised
else: If there is no exception then execute this block
Liste d'exceptions standard
Exception: Toutes les exceptions de la classe de base
StopIteration: quand aucun objet n'est pointé par la méthode suivante de l'itérateur, cette exception est levée
SystemExit: Hissé via la fonction sys.exit ().
StandardError: Except StopIteration et SystemExit, cela agit comme la classe de base pour toutes les fonctions intégrées.
ArithmeticError: Pour toutes les erreurs numériques, ces exceptions agissent comme la classe de base.
OverflowError: pour un type numérique si le calcul dépasse la valeur maximale possible, cette erreur est déclenchée.
FloatingPointError: l' échec d'une opération float déclenche cette erreur
ZeroDivisionError: déclenchée lorsqu'une situation de division par zéro se produit dans le code
AssertionError: lorsque l'instruction assert échoue, cette erreur est déclenchée
AttributeError: Lorsqu'une affectation ou une référence d'attribut échoue, cela déclenche cette erreur
EOFErroR: déclenché lorsqu'aucune entrée de la fonction et fin de fichier n'est atteinte
ImportError: déclenchée lors de l'échec d'une déclaration d'importation.
KeyboardInterrupt: déclenché en cas d'interruption de l'exécution du programme
LookupError: toutes les erreurs de recherche relèvent de cette classe de base
IndexError: déclenchée lorsque l'index n'est pas trouvé
KeyError: déclenchée lorsque le dictionnaire ne contient pas la valeur de clé mentionnée
NameError: déclenché pour un identifiant manquant localement ou globalement dans le programme
UnboundLocalError: déclenchée lors de l'utilisation d'une variable locale sans qu'aucune valeur ne lui soit affectée.
EnvironmentError: classe de base pour les erreurs orientées environnement qui se produisent en dehors de python
IOError: déclenchée lorsqu'un processus d'entrée / sortie échoue
SyntaxError: toutes les erreurs de syntaxe python sont gérées par cette exception
IndentationError: une indentation incorrecte entraînera ce type d'erreurs
SystemError: cela se produit dans une situation où l'interpréteur ne fonctionne pas comme prévu, mais cette erreur ne fait pas sortir le programme python de l'exécution
SystemExit: Lorsque la fonction sys.exit () est utilisée par l'interpréteur python, cela conduit à cette exception. cela fait que le code se termine anormalement lorsqu'il n'est pas traité correctement.
TypeError: Lorsqu'une opération n'est pas valide pour un type de données particulier, cette erreur est demandée
ValueError: lorsqu'une fonction contient un argument de type valide mais qu'une valeur incorrecte a été spécifiée pour cet argument de type
RuntimeError: Si l'une des catégories ci-dessus n'est pas satisfaite, cette erreur est déclenchée
NotImplementedError: déclenchée alors qu'une méthode non figurative qui veut être mise en pratique dans une classe héritée n'est en fait pas implémentée. La mise en ordre et la gestion de ces exceptions est un processus effectué par le bloc except qui est inséré à la fin de chaque bloc try.
Processus de gestion des exceptions en Python
- Sauf clause avec plusieurs exceptions
- Sauf clause sans exception mentionnée
- Sauf clause avec arguments
Ci-dessous, nous discuterons du processus de gestion des exceptions en Python
1. Clause d'exception avec plusieurs exceptions
Cela permet à plus d'une instruction except d'être déclarée dans une seule clause except et toutes ces exceptions déclarées peuvent être déclenchées à partir de cette clause except.
Syntaxe:
try: Code block1
except(Exception1(, Exception2(, …ExceptionN)))):
Executes when one among the exception happens
else: Executed when no exception is raised
2. Sauf clause sans exception
Toutes les exceptions déclenchées par le bloc try peuvent être traitées ici.
Syntaxe:
try:
Code block1
except:
Executes if any type of exception happens
else:
If there is no exception then execute this block
3. Sauf clause avec arguments
La cause réelle de l'exception sera conservée dans la valeur de l'argument
Syntaxe:
try:
Code block1except
ExceptionType, Argument:
Argument value is printed here
4. Programme de gestion des exceptions
Syntaxe:
try:
fh = open("testfile1", "w")
try:
fh.write("Exception handeling")
finally:
print "Going to close the file"
fh.close()
except IOError:
print "Error: can\'t find file or read data"
Conclusion
Chaque langage de programmation détient le processus de lever une exception chaque fois qu'il fait face à un ensemble de situations inattendues et python est l'un d'entre eux qui produit des techniques profondes pour gérer ces exceptions, ce qui en fait un langage de programmation basé sur une base solide.
Article recommandé
Cela a été un guide pour la gestion des exceptions Python. Nous discutons ici de la liste d'exceptions et du processus standard avec la syntaxe. Vous pouvez également consulter nos autres articles suggérés pour en savoir plus -
- Avantages de Python
- Cadres Python
- Patterns en Python
- Compilateurs Python
- Gestion des exceptions dans VB.NET (exemples)
- Dictionnaire en Python
- Événements VB.Net