Python assertionerror

Python assertionerror
Lorsqu'un programme Python rencontre une condition inattendue lors de l'exécution, le programme interrompt l'exécution et renvoie une exception. Dans Python, les exceptions et les erreurs de syntaxe sont les deux principales catégories d'erreurs. Lorsqu'un morceau de code Python qui est syntaxiquement crée une erreur, il est connu comme une augmentation d'une exception / erreur. Le message d'erreur dans la dernière ligne définit le type d'exception précis et fournit une description pour aider à déboguer, et une flèche pointe vers la ligne ou l'emplacement où l'exception s'est produite. Catching et gérer des exceptions sont cruciaux pour éviter un accident de programme soudain. Utilisez une autre façon d'exécuter le code. Par exemple, lorsque l'exception spécifiée se produit. Ce tutoriel discutera de l'assemblée d'assurance et de la façon dont vous pouvez le résoudre dans Python.

Qu'est-ce qu'une assertion EERROR à Python?

Les erreurs d'affirmation sont un concept de programmation qui se produit lorsqu'un programmeur écrit ou crée un bloc de code utilisé pour déclarer un critère ou une condition à satisfaire avant l'exécution du module. Comme toute erreur Python, le contrôle est transféré sur la ligne de code suivante si la condition spécifiée lorsque l'affirmation a été déclarée vraie. S'il est faux, en revanche, une erreur ou une exception est augmentée et le programme est arrêté. L'instruction ASSERT peut être utilisée dans divers langages de programmation avec leurs syntaxes spécifiques car elle est indépendante du langage. C'est une sous-classe ou une instance de la classe d'exception. Python AssertionError a la syntaxe suivante:

Syntaxe: affirmer l'état, error_message (facultatif)

Exemple

Nous entrons dans l'âge d'une personne en entrée, et s'il est inférieur à zéro, la console augmentera une erreur d'assistance.

Maintenant, et si nous entrons dans un âge inférieur à 0?

Le débogage de votre code à l'aide de cette méthode est plus simple, ce qui rend plus simple à trouver des erreurs et à corriger les bugs dans le programme.

Comment AssertionError fonctionne à Python

Le langage Python comprend une instruction ASSERT qui peut être utilisée pour générer des sorties de message d'erreur simples avec des affirmations logiques. Lorsque l'énoncé de l'affirmation échoue, une «exception» est relevée. Dans Python, les classes d'exception sont dérivées de la classe BasEException. La classe BaseException, qui est également la classe de base de la classe AssertionError, est de savoir où la classe d'exception tire de. Il devrait toujours y avoir un code de gestion des exceptions approprié pour faire face à l'échec d'une instruction ASSERT chaque fois que l'on est utilisé. Le gestionnaire d'exceptions par défaut dans Python imprimera le message d'erreur écrit du programmeur, mais l'erreur peut également être gérée ou résolue sans message d'erreur.

Implémentation d'assertionerror à Python

Voici plusieurs exemples d'assemblage d'établissement dans Python:

Exemple

Dans cet exemple, nous rédigerons un programme Python pour afficher une assertion EERROR dans un programme qui trouve la zone d'un cercle.

La valeur du rayon «R» est transmise comme entrée à une fonction du programme précédent qui est créé pour trouver la zone du cercle. L'instruction ASSERT est ensuite utilisée pour déterminer si la valeur ou le rayon fourni «R» est inférieur à zéro, et si une valeur négative lui est fournie, une exception sera soulevée. La zone du cercle sera retournée en fonction de la valeur du rayon «r» fourni à la fonction. Tout d'abord, la fonction est exécutée avec une valeur de R comme 3. La fonction est ensuite exécutée avec la valeur 2.5. L'affirmation de l'agriculture est soulevée lorsque nous utilisons une valeur négative de «r», je.e., "-1".

Essayons un autre exemple pour afficher l'occurrence d'une erreur d'assertion.

Exemple

Dans cet exemple, le programme déterminera si la valeur du dénominateur n'est pas nulle.

Le message d'erreur de l'erreur d'assurance s'affiche dans le programme précédent. Nous avons créé deux variables (A et B), et les valeurs entières spécifient les variables. La deuxième variable, je.e., B est ensuite testé pour voir s'il n'est pas égal à 0 en utilisant l'instruction ASSERT. Autrement spécifié, le message d'erreur est imprimé. Sinon, le résultat de la division du premier numéro par la deuxième valeur est affiché. Dans l'image précédente, la sortie du programme s'affiche.

Applications de l'assemblant

Les autres utilisations bénéfiques de l'erreur d'affirmation comprennent:

  • Affirmation aide à évaluer les valeurs des paramètres
  • Les affirmations aident à surveiller le type d'entrée et si cette valeur est valide
  • De plus, les affirmations aident à identifier si un autre développeur de code utilise une mauvaise interface
  • Les affirmations aident à surveiller en continu la sortie du programme

Comment nous pouvons éviter les erreurs d'affirmation en python

  1. L'indicateur -o dans un programme Python peut être utilisé pour désactiver chaque déclaration d'affirmation. Il est important de garder à l'esprit que les déclarations qui viennent après un relevé d'affirmation ne seront pas exécutées si nous désactivons les relevés d'affirmation.
  2. La variable d'environnement peut également définir un drapeau pour désactiver les instructions d'affirmation. Tous les processus et applications qui utilisent ou héritent de l'environnement sont touchés dans cette situation.
  3. Dans Python, l'approche la plus simple pour éviter les erreurs d'assertion est de les gérer manuellement. Si nous nous assurons que le flux de contrôle du programme est détourné afin qu'il n'accède pas aux instructions Assert, il n'y a aucune chance d'erreurs d'assertion.

Gérer l'agriculteur

Outre l'instruction Assertion, nous pouvons également gérer l'erreur d'assurance en utilisant les méthodes suivantes:

Gestion de l'erreur d'affirmation à l'aide des blocs d'essai à l'exception

L'instruction ASSERT détermine si les valeurs sont égales. Le bloc d'essai augmente l'erreur d'assurance-EERROR car ces entiers ne sont pas égaux. La commande d'impression est exécutée après que le bloc sauf a pris l'exception. Ici, la sortie de l'instruction d'impression du bloc d'exception s'affiche. Le mot-clé RIEN peut être utilisé pour relancer l'erreur dans le bloc sauf afin que nous puissions déterminer la source de l'exception. Lorsqu'une exception se produit, le mot-clé «augmenter» augmentera une erreur et mettra fin au programme. Il aide à maintenir ou à maintenir un enregistrement / une trace de l'exception existante.

Gestion de l'assertionError à l'aide du module Traceback

Lorsque le code contient plusieurs instructions ASSERT, le module Traceback aide à identifier la source de l'erreur exacte.

À l'aide du module Traceback, notre déclaration d'impression peut être écrite avec des espaces réservés .

De plus, nous pouvons définir d'autres variables pour stocker la position de ligne, le nom du fichier, le nom de la méthode, ainsi que le texte / le message où l'exception s'est produite.

L'objet Traceback est appelé «TB». Nous utilisons deux espaces réservés: un pour le texte et un pour la position de la ligne dans l'instruction PRINT.

Les trois composantes de l'énoncé «Rise» - Exc_Type, exc_traceback et exc_value - sont retournés par le sys.Fonction exc_info ().

Gestion de l'assemblage AssertionError à l'aide de la déclaration d'impression

Pour gérer manuellement une exception, nous pouvons utiliser l'instruction «Imprimer» à l'intérieur du bloc sauf.

La déclaration d'impression imprime tout message d'erreur dans lequel l'utilisateur entre. Avec cette méthode, une erreur technique ne sera pas une préoccupation pour l'utilisateur.

Au lieu d'une erreur, un bref message s'affiche.

Conclusion

Dans cet article, nous avons d'abord vu l'introduction d'exceptions à Python. Nous avons discuté d'assertionerror, comment cela fonctionne et comment nous pouvons implémenter AssertionError dans Python. Nous avons expliqué plusieurs avantages de l'assemblant et comment nous pouvons les éviter. Dans la dernière section de cet article, nous avons vu comment nous pouvons gérer l'assemblant AssertionError dans Python en utilisant les blocs d'essai à l'exception, le module Traceback et l'impression.