logo

Python | Behauptungsfehler

Behauptungsfehler
Assertion ist ein Programmierkonzept, das beim Schreiben eines Codes verwendet wird, bei dem der Benutzer eine Bedingung als wahr erklärt behaupten Anweisung vor der Ausführung des Moduls. Wenn die Bedingung ist WAHR , wechselt das Steuerelement einfach zur nächsten Codezeile. Falls es so ist FALSCH Das Programm stoppt die Ausführung und kehrt zurück Behauptungsfehler Ausnahme.

Die Funktion von behaupten Die Anweisung ist unabhängig von der Sprache, in der sie implementiert ist, dieselbe, es handelt sich um ein sprachunabhängiges Konzept, nur die Syntax variiert je nach Programmiersprache.



Syntax der Behauptung:
behaupten Bedingung, error_message (optional)

Beispiel 1: Assertionsfehler mit error_message.



Python3






# AssertionError with error_message.> x>=> 1> y>=> 0> assert> y !>=> 0>,>'Invalid Operation'> # denominator can't be 0> print>(x>/> y)>

>

Java-Reverse-String
>

Ausgabe :

Traceback (most recent call last): File '/home/bafc2f900d9791144fbf59f477cd4059.py', line 4, in assert y!=0, 'Invalid Operation' # denominator can't be 0 AssertionError: Invalid Operation>

Der Standard-Ausnahmebehandler in Python gibt die vom Programmierer geschriebene Fehlernachricht aus oder behandelt den Fehler einfach ohne Meldung.
Beide Möglichkeiten sind gültig.

Behandlung der AssertionError-Ausnahme:
Behauptungsfehler wird von der Exception-Klasse geerbt. Wenn diese Ausnahme auftritt und AssertionError auslöst, gibt es zwei Möglichkeiten, sie zu behandeln: entweder der Benutzer oder der Standard-Ausnahmebehandler.
In Beispiel 1 haben wir gesehen, wie der Standard-Ausnahmebehandler die Arbeit erledigt.
Schauen wir uns nun die manuelle Handhabung an.

Beispiel 2

Python3




# Handling it manually> try>:> >x>=> 1> >y>=> 0> >assert> y !>=> 0>,>'Invalid Operation'> >print>(x>/> y)> # the errror_message provided by the user gets printed> except> AssertionError as msg:> >print>(msg)>

js onclick
>

>

Ausgabe :

Invalid Operation>

Praktische Anwendungen.
Beispiel 3: Testen eines Programms.

Python3




Versuchen Sie es mit dem Catch-Block in Java

# Roots of a quadratic equation> import> math> def> ShridharAcharya(a, b, c):> >try>:> >assert> a !>=> 0>,>'Not a quadratic equation as coefficient of x ^ 2 can't be 0'> >D>=> (b>*> b>-> 4> *> a>*>c)> >assert> D>>=> 0>,>'Roots are imaginary'> >r1>=> (>->b>+> math.sqrt(D))>/>(>2> *> a)> >r2>=> (>->b>-> math.sqrt(D))>/>(>2> *> a)> >print>(>'Roots of the quadratic equation are :'>, r1, '', r2)> >except> AssertionError as msg:> >print>(msg)> ShridharAcharya(>->1>,>5>,>->6>)> ShridharAcharya(>1>,>1>,>6>)> ShridharAcharya(>2>,>12>,>18>)>

>

>

Ausgabe :

Roots of the quadratic equation are : 2.0 3.0 Roots are imaginary Roots of the quadratic equation are : -3.0 -3.0>

Dies ist ein Beispiel, das zeigt, wie diese Ausnahme die Ausführung des Programms stoppt, sobald die Assert-Bedingung „Falsch“ ist.

Weitere nützliche Anwendungen:

  • Überprüfung der Parameterwerte.
  • Überprüfung der gültigen Eingabe/des gültigen Typs.
  • Erkennen des Missbrauchs einer Schnittstelle durch einen anderen Programmierer.
  • Überprüfen der Ausgabe einer Funktion.