Python Try Except Function expliqué avec un exemple

Publié: 2021-11-22

La programmation joue un rôle essentiel dans la réalisation de plusieurs tâches à l'ère moderne. Que ce soit dans les domaines de la recherche ou des affaires, l'application de la programmation se voit partout. Python est l'un de ces langages de programmation qui a été largement appliqué dans la vie quotidienne de presque toutes les personnes. Bien sûr, cela dépend des programmes qui sont développés et exécutés. Que ce soit dans l'apprentissage automatique, le développement Web, le développement de logiciels ou tout programme éducatif, c'est principalement python que les programmeurs appliquent.

Cependant, pour tout programme qui a été conçu, il y a des chances que des erreurs y soient parfois associées. Ces erreurs peuvent être définies par l'utilisateur ou par défaut dans le programme lui-même. Un programme écrit dans le langage de programmation python peut également se terminer chaque fois qu'il détecte une forme d'erreur dans le code. L'article décrira les exceptions qui se produisent dans la programmation Python et comment elles sont gérées par l'utilisation de la fonction try et except. En programmation python, deux types d'erreurs se produisent principalement, à savoir les erreurs de syntaxe et les exceptions.

Table des matières

Exceptions et erreurs de syntaxe

L'une des formes les plus courantes d'erreurs Python est les erreurs de syntaxe. Celles-ci sont également appelées erreurs d'analyse. Une petite flèche est utilisée pour pointer l'erreur par l'analyseur.

L'autre forme d'erreur est les exceptions en python. Il y a des cas où la syntaxe du programme reste la même, mais certaines erreurs apparaissent chaque fois que le programme est exécuté. Ces erreurs détectées lors de l'exécution sont appelées exceptions.

Quelques exemples d'erreurs d'exception sont répertoriés ci-dessous :

1. Interruption du clavier :

Ce type d'erreur se produit chaque fois que l'entrée de l'utilisateur est interrompue par une pression indésirable sur les touches du clavier. La touche n'est généralement pas requise et est enfoncée par erreur par l'utilisateur.

2. Erreur IO

Parfois, il y a des cas où vous ne pouvez pas ouvrir un fichier, et ces exceptions sont associées à de tels cas.

3. Erreur d'importation

Chaque fois que le programme python ne peut pas localiser le module, de tels types d'exceptions se produisent.

4. Erreur EOF :

Sans lire aucune donnée, si la fin du fichier est atteinte, de tels types d'exceptions se produisent.

5. Erreur de valeur

Les exceptions sont associées aux fonctions intégrées. Chaque fois que de telles fonctions reçoivent un argument erroné, ces exceptions se produisent.

L'apparition d'erreurs de syntaxe réside dans la détection d'instructions incorrectes dans le programme python. Voici un exemple pour montrer la génération d'erreurs de syntaxe :

>>> imprimer( 0 / 0 ))

Fichier "<stdin>", ligne 1

imprimer( 0 / 0 ))

^

ErreurDeSyntaxe: Syntaxe invalide

On peut observer qu'il y a une flèche dans le programme ci-dessus, et elle indique l'emplacement où l'analyseur a détecté l'erreur. De plus, il y a deux crochets dans le code, ce qui entraîne une mauvaise syntaxe. Il y a donc eu une erreur de syntaxe. Vous pouvez supprimer le crochet et exécuter à nouveau le code.

L'exécution du programme après avoir supprimé le crochet affichera désormais une exception de "ZeroDivisionError". C'est parce que la syntaxe du code est correcte, mais il y a quand même une erreur. Ce type d'erreur résultant d'un code de syntaxe correct est appelé les exceptions.

Le programme se traduira par une ligne "ZeroDivisionError: division entière ou modulo par zéro." C'est la dernière ligne du programme, et elle montre quelles exceptions le programme génère. Vous pouvez remarquer que python ne mentionne pas seulement les erreurs d'exception ; à la place, il explique et montre le type d'exception.

Gestion des exceptions via la clause Try Except

Le concept de gestion des exceptions en python est appelé gestion des exceptions. Des programmes peuvent être écrits pour gérer certains types spécifiques d'exceptions. Un exemple de gestion des exceptions est illustré dans l'image ci-dessous :

Le code ci-dessus est extrait de https://docs.python.org/3/tutorial/errors.html .

Dans le programme ci-dessus, l'utilisateur est invité à entrer un nombre entier valide comme entrée. Mais, au lieu d'un entier valide, il y a eu une interruption côté utilisateur. Chaque fois qu'un tel type d'interruption de l'utilisateur est rencontré, il existe un type d'exception déclenché par le programme python, qui est l'exception de "KeyboardInterrupt".

Les blocs python try except sont utilisés pour intercepter et gérer les exceptions se produisant dans un programme python. Le code présent sous l'instruction try est exécuté comme un programme normal. En même temps, le programme qui est présent dans l'instruction except est la réponse principale du programme contre toute forme d'exceptions.

À partir de l'exemple décrit ci-dessus dans la section "erreurs d'exception et de syntaxe", on peut observer qu'une erreur s'est produite lorsque la mauvaise syntaxe a été utilisée dans le code. Cependant, s'il n'y a pas de traitement de l'exception appropriée, le programme se serait terminé. C'est principalement le devoir de la clause d'exception de décider comment le programme doit réagir en cas d'exceptions.

Les instructions try et except sont utilisées pour gérer les erreurs en python. Chaque fois qu'une erreur se produit dans le code de python, ces instructions sont utilisées pour les gérer. Il existe un bloc de code séparé pour les fonctions try et except. Le code dans le bloc try aide à vérifier l'existence d'erreurs dans le programme. Par conséquent, chaque fois qu'il n'y a pas d'erreur dans le programme, le code du bloc try sera exécuté. Le code à l'intérieur du bloc except sera exécuté lorsque des erreurs seront détectées dans le bloc de code précédent. Il existe une syntaxe spécifique pour exécuter la version d'essai et le bloc d'instructions except dans le langage de programmation Python.

Syntaxe de la fonction Try Except en Python :

essayer:

# Certains codes

sauf :

# Exécuté si une erreur dans le

# essayer de bloquer

Fonctionnement de l'instruction Try

Comprenons d'abord le fonctionnement du bloc try. Voici quelques étapes qui définiront le fonctionnement du bloc de code dans le bloc try.

  • La clause "try" est exécutée en premier. Cela signifie que le code qui se trouve entre la clause try et la clause except est exécuté en premier.
  • Les exceptions sont vérifiées. Ainsi, si aucune erreur ou exception n'est détectée, seule la clause try sera exécutée. Dans le même temps, la clause except cessera de s'exécuter.
  • Dans les cas où il y a une exception, le programme ignorera la clause try. Dans de tels cas, il y aura le fonctionnement de la clause d'exception.
  • Il peut y avoir des cas où il y a une exception, mais la clause d'exception n'est pas capable de gérer cette exception. Dans de tels cas, l'exception est transmise aux instructions de try en dehors du bloc. Si l'exception n'est pas gérée même alors, le programme arrête de s'exécuter.
  • Une instruction try peut avoir beaucoup de clauses except (plus d'une).

Supposons qu'un programme python rencontre différentes exceptions, puis pour spécifier les différents gestionnaires, plusieurs blocs except sont utilisés dans le programme python. À la fois, un seul gestionnaire sera exécuté. Même dans un programme python, plusieurs exceptions peuvent être utilisées comme parenthèses dans la clause except.

Parfois, une classe peut être présente dans l'instruction except.

Il y a l'utilisation d'un mot-clé en python, qui est le mot « enfin ». Le mot-clé est utilisé ou est exécuté après l'exécution des blocs de try et except. Ainsi, chaque fois qu'il y a une terminaison de la clause try en raison d'une exception ou d'une terminaison normale, il y a une exécution du bloc try dans de tels cas.

Lever des exceptions

Après avoir détecté les exceptions, les exceptions sont forcées de se produire en levant les exceptions. Cela se fait en utilisant la déclaration de "raise". L'un des objectifs importants de l'instruction raise est que l'exception doit être déclenchée.

Quelques points importants pour résumer toute l'idée sont:

  • L'exécution de la clause try se poursuit jusqu'à ce qu'elle rencontre la première exception.
  • C'est à l'intérieur du bloc de sauf que le programme décide comment répondre à l'exception.
  • Plusieurs exceptions peuvent être anticipées, puis le programme différencie la façon de réagir contre elles.
  • Une exception peut être lancée à tout moment grâce à l'utilisation de l'instruction «raise».
  • L'instruction "assert" permet au programme de savoir si la certaine condition est remplie et si la condition n'est pas remplie, puis de lancer l'exception requise.
  • La clause else permet au programme d'exécuter le code lorsqu'il n'y a pas d'exceptions dans la clause "try".
  • L'instruction "finally" exécute les sections de code qui sont censées être toujours exécutées sans rencontrer d'exceptions précédentes.

Conclusion

L'article a brièvement discuté des erreurs qui pourraient survenir dans un programme python, et dans le cas de certaines erreurs exceptionnelles, le programme lève une exception. Ces exceptions doivent être gérées correctement pour la bonne exécution du programme. Le try and except en python permet la gestion des exceptions dans le programme. Le code sous l'instruction "try" est exécuté. Si le code n'est pas exécuté avec succès, le programme se terminera à la ligne de code qui a généré l'erreur, puis le code de "sauf" s'exécutera.

Obtenez des diplômes en génie logiciel des meilleures universités du monde. Gagnez des programmes Executive PG, des programmes de certificat avancés ou des programmes de maîtrise pour accélérer votre carrière.

Le bloc de try permet de tester un bloc de code pour détecter la présence d'éventuelles erreurs. Le bloc except permet au programme de gérer l'exception s'il y en a une.

Être un maître en développement de logiciels

Postulez maintenant pour une maîtrise en informatique de Liverpool John Moores