Fabrication industrielle
Internet des objets industriel | Matériaux industriels | Entretien et réparation d'équipement | Programmation industrielle |
home  MfgRobots >> Fabrication industrielle >  >> Industrial programming >> Python

Gestion des exceptions Python :essayer, attraper, enfin et relancer [Exemple]

Qu'est-ce qu'une gestion des exceptions en Python ?

Une exception est une erreur qui se produit lors de l'exécution d'un programme. Cependant, lors de l'exécution d'un programme, Python génère une exception qui doit être gérée pour éviter que votre programme ne plante. En langage Python, les exceptions se déclenchent automatiquement en cas d'erreur, ou elles peuvent être déclenchées et interceptées par votre code.

L'exception indique que, bien que l'événement puisse se produire, ce type d'événement se produit rarement. Lorsque la méthode n'est pas capable de gérer l'exception, elle est renvoyée à sa fonction appelante. Finalement, lorsqu'une exception est levée hors de la fonction principale, le programme se termine brusquement.

Dans ce tutoriel de manipulation exceptionnelle de Python, vous apprendrez :

Exemples courants d'exception :

Pourquoi utiliser les exceptions ?

Voici les raisons d'utiliser des exceptions en Python :

Règles d'exception

Voici quelques règles essentielles de gestion des exceptions Python :

Mécanisme de gestion des exceptions Python

La gestion des exceptions est gérée par les 5 mots clés suivants :

  1. essayer
  2. attraper
  3. enfin
  4. lancer

Instruction d'essai Python

Une instruction try inclut le mot clé try, suivi de deux-points (:) et d'une suite de code dans laquelle des exceptions peuvent se produire. Il contient une ou plusieurs clauses.

Lors de l'exécution de l'instruction try, si aucune exception ne s'est produite, l'interpréteur ignore les gestionnaires d'exceptions pour cette instruction try spécifique.

Au cas où, si une exception se produit dans une suite try, la suite try expire et le contrôle du programme est transféré au gestionnaire correspondant except après la suite try.

Syntax:
try:
statement(s)

La déclaration de capture

Les blocs catch prennent un argument à la fois, qui est le type d'exception qu'ils sont susceptibles d'attraper. Ces arguments peuvent aller d'un type spécifique d'exception qui peut varier à une catégorie fourre-tout d'exceptions.

Règles pour le bloc catch :

Exemple :

try
}
catch (ArrayIndexOutOfBoundsException e) {
System.err.printin("Caught first " + e.getMessage()); } catch (IOException e) {
System.err.printin("Caught second " + e.getMessage());
}

Enfin, déclaration en Python

Enfin, le bloc s'exécute toujours, qu'une exception soit levée ou non. Le mot-clé final vous permet de créer un bloc de code qui suit un bloc try-catch.

Enfin, la clause est facultative. Il est destiné à définir les actions de nettoyage qui doivent être celles exécutées dans toutes les conditions.

try:
    raise KeyboardInterrupt
finally:
    print 'welcome, world!'
Output
Welcome, world!
KeyboardInterrupt

Enfin, la clause est exécutée avant l'instruction try.

Raise Statement en Python

L'instruction raise spécifie un argument qui initialise l'objet exception. Ici, une virgule suit le nom de l'exception et l'argument ou le tuple de l'argument qui suit la virgule.

Syntaxe :

raise [Exception [, args [, traceback]]]

Dans cette syntaxe, l'argument est facultatif et, au moment de l'exécution, la valeur de l'argument de l'exception est toujours aucune.

Exemple :

Une exception Python peut être n'importe quelle valeur telle qu'une chaîne, une classe, un nombre ou un objet. La plupart de ces exceptions levées par le noyau Python sont des classes avec un argument qui est une instance de la classe.

Erreurs Python importantes

Type d'erreur Description
Erreur arithmétique ArithmeticError agit comme une classe de base pour toutes les exceptions arithmétiques. Il est déclenché pour les erreurs dans les opérations arithmétiques.
Erreur d'importation ImportError est levé lorsque vous essayez d'importer un module qui n'est pas présent. Ce genre d'exception se produit si vous avez fait une erreur de frappe dans le nom du module ou le module qui n'est pas présent dans le chemin standard.
Erreur d'index Une IndexError est levée lorsque vous essayez de faire référence à une séquence qui est hors limites.
Erreur de clé Lorsqu'une clé spécifique est introuvable dans un dictionnaire, une exception KeyError est déclenchée.
Erreur de nom Une NameError est déclenchée lorsqu'un nom est référencé dans un code qui n'existe jamais dans l'espace de noms local ou global.
ValueErreur Une erreur de valeur est déclenchée lorsqu'une fonction ou une opération intégrée reçoit un argument qui peut être de type correct mais qui n'a pas de valeur appropriée.
EOFerror Ce type d'erreur se produit lorsqu'une des fonctions intégrées (input() ou raw_input()) atteint une condition EOF sans lire aucune donnée.
ZeroDivisonError Ce type d'erreur est généré lors de la division ou du module par zéro pour tous les types numériques.
IOError- Ce type d'erreur se produit lorsqu'une opération d'entrée/sortie échoue.
erreur de syntaxe SyntaxErrors déclenché lorsqu'il y a une erreur dans la syntaxe Python.
Erreur d'indentation Cette erreur est générée lorsque l'indentation n'est pas correctement définie

Autres exceptions Python importantes

Exception Description
Exception Arithmétique Erreur arithmétique, comme diviser par zéro.
Exception ArraylndexOutOfBounds L'index du tableau est hors limites.
ArrayStoreException L'affectation vous aide à l'élément de tableau d'un type incompatible.
ClassCastException Cast non valide
MlegalMonitorStateException Opération de surveillance illégale, comme attendre un fil déverrouillé.
MlegalStateException L'environnement ou l'application est dans un état incorrect.
ClassNotFoundException Classe introuvable.
CloneNotSupportedException Essayer de cloner un objet qui n'implémente pas l'interface Cloneable.
Exception d'accès illégal L'accès à une classe est refusé.
Exception d'instanciation Se produit lorsque vous tentez de créer un objet d'une interface ou d'une classe abstraite.
CloneNotSupportedException Essayer de cloner un objet qui n'implémente pas l'interface.

Erreur vs Exceptions

Erreur Exceptions
Toutes les erreurs en Python sont du type non vérifié. Les exceptions incluent à la fois le type coché et non coché.
Des erreurs se produisent au moment de l'exécution qui sont inconnues du compilateur. Les exceptions peuvent être récupérées en les gérant à l'aide de blocs try-catch.
Les erreurs sont principalement causées par l'environnement dans lequel une application s'exécute. L'application elle-même provoque des exceptions.
Exemples :
OutofMemoryError
Exemples :
Exceptions vérifiées, exception SQL, NullPointerException, etc.

Résumé


Python

  1. Types de données Python
  2. Opérateurs Python
  3. Instruction de passe Python
  4. Arguments de la fonction Python
  5. Dictionnaire Python
  6. Gestion des exceptions Python à l'aide de l'instruction try, except et finally
  7. Itérateurs Python
  8. Fermetures Python
  9. Gestion des exceptions Java