Maison  >  Article  >  développement back-end  >  Quelle est la différence entre les exceptions et les erreurs Python

Quelle est la différence entre les exceptions et les erreurs Python

藏色散人
藏色散人original
2019-06-26 09:58:1213343parcourir

Quelle est la différence entre les exceptions et les erreurs Python

Quelle est la différence entre les exceptions et les erreurs Python

Erreur

D'un point de vue logiciel, l'erreur est grammaticale ou logique. Les erreurs de syntaxe indiquent qu'il existe une erreur structurelle dans le logiciel qui ne peut pas être interprétée par l'interpréteur ou qui ne peut pas être compilée par le compilateur. Ces erreurs doivent être corrigées avant l'exécution du programme. Lorsque la syntaxe du programme est correcte, le reste n’est que des erreurs logiques. Les erreurs logiques peuvent être dues à une entrée incomplète ou illégale ; dans d’autres cas, il se peut que la logique ne puisse pas être générée, calculée ou que le processus requis pour générer le résultat ne puisse pas être exécuté. Ces erreurs sont communément appelées respectivement erreurs de domaine et erreurs de plage.

Lorsque Python détecte une erreur, l'interpréteur indique que le flux actuel ne peut pas continuer à s'exécuter et qu'une exception se produit.

2. Exception

La meilleure description d'une exception est la suivante : il s'agit d'une action entreprise en dehors du flux de contrôle normal en raison d'une erreur dans le programme. Ce comportement est divisé en deux phases : d'abord l'erreur qui a provoqué l'exception, puis la phase de détection (et d'action éventuelle).

La première phase se produit après qu'une condition anormale (parfois appelée condition d'exception) se produit. Chaque fois qu'une erreur est détectée et qu'une condition d'exception est reconnue, l'interpréteur lève une exception. L'initiation peut également être appelée déclenchement ou génération, par laquelle l'interprète informe le flux de contrôle actuel qu'une erreur s'est produite.

Python permet également aux programmeurs de déclencher eux-mêmes des exceptions. Qu'elle soit générée par l'interpréteur Python ou par le programmeur, une exception est un signal indiquant qu'une erreur s'est produite. Le flux en cours sera interrompu pour gérer l'erreur et prendre. actions appropriées. , c’est la deuxième étape.

La gestion des exceptions a lieu dans la deuxième phase. Après qu'une exception soit levée, de nombreuses actions différentes peuvent être invoquées, notamment ignorer l'erreur (enregistrer l'erreur mais ne prendre aucune mesure, prendre des mesures correctives et mettre fin au programme), ou essayer d'atténuer le problème et tenter de poursuivre l'exécution. Toutes ces opérations représentent une continuation, ou une branche de contrôle, et l'essentiel est que le programmeur puisse indiquer au programme comment s'exécuter lorsqu'une erreur se produit.

Les langages comme Python qui prennent en charge le déclenchement et (plus important) la gestion des exceptions donnent aux développeurs un contrôle plus direct sur les erreurs lorsqu'elles se produisent. Les programmeurs acquièrent non seulement la capacité de détecter les erreurs, mais également de prendre des mesures correctives plus fiables lorsqu'elles se produisent.

La robustesse des applications a été grandement améliorée grâce à la possibilité de gérer les erreurs au moment de l'exécution.

Les exceptions et la gestion des exceptions ne sont pas des concepts nouveaux. Ils existent également en Ada, Modula-3, C++, Eiffel et Java. L'origine des exceptions peut être attribuée au code du système d'exploitation qui gère les exceptions telles que les erreurs système et les interruptions matérielles.

Vers 1965, PL/1 est apparu comme le premier langage majeur à prendre en charge les exceptions et la gestion des exceptions en tant qu'outil logiciel fourni. Semblable à d'autres langages prenant en charge la gestion des exceptions, Python adopte les concepts de blocs « try/try » et de blocs « catch/capture », et il est plus « discipliné » dans la gestion des exceptions.

Au lieu de créer aveuglément un code « fourre-tout/fourre-tout », nous pouvons créer différents gestionnaires pour différentes exceptions.

Apprentissage recommandé : "

Tutoriel Python"

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn