In diesem Artikel lernen wir die Assertion in Python mithilfe von Assert kennen.
Was ist Behauptung?
Behauptungen sind Aussagen, die eine Tatsache in Ihrem Programm sicher behaupten oder angeben. Wenn Sie beispielsweise eine Divisionsfunktion schreiben, können Sie sicher sein, dass der Divisor nicht Null sein sollte. Sie behaupten, dass der Divisor nicht gleich Null ist.
Assertions sind einfach boolesche Ausdrücke, die prüfen, ob die Bedingungen true zurückgeben oder nicht. Wenn dies zutrifft, führt das Programm nichts aus und wechselt zur nächsten Codezeile. Wenn es jedoch falsch ist, stoppt das Programm und gibt einen Fehler aus.
Es ist auch ein Debugging-Tool, da es das Programm zum Stillstand bringt, sobald ein Fehler auftritt und an welcher Stelle des Programmfehlers aufgetreten ist.
Wir können uns anhand des folgenden Flussdiagramms klar werden:
Python-Assert-Anweisung
Python verfügt über eine integrierte assert
Anweisung zur Verwendung der Assertionsbedingung im Programm. assert
Anweisung hat eine Bedingung oder einen Ausdruck, der immer wahr sein soll. Wenn die Bedingung falsch ist, hält assert das Programm an und gibt ein AssertionError
.
Syntax für die Verwendung von Assert in Pyhton:
behaupten
behaupten,
In Python können wir assert
Anweisungen wie oben erwähnt auf zwei Arten verwenden.
assert
Anweisung hat eine Bedingung und wenn die Bedingung nicht erfüllt ist, stoppt das Programm und gibtAssertionError
.assert
Anweisung kann auch eine Bedingung und eine optionale Fehlermeldung haben. Wenn die Bedingung nicht erfüllt ist, stoppt assert das Programm und gibtAssertionError
zusammen mit der Fehlermeldung aus.
Nehmen wir ein Beispiel, in dem wir eine Funktion haben, die den Durchschnitt der vom Benutzer übergebenen Werte berechnet und der Wert keine leere Liste sein sollte. Wir werden die assert
Anweisung verwenden, um den Parameter zu überprüfen. Wenn die Länge der übergebenen Liste Null ist, wird das Programm angehalten.
Beispiel 1: Verwenden von assert ohne Fehlermeldung
def avg(marks): assert len(marks) != 0 return sum(marks)/len(marks) mark1 = () print("Average of mark1:",avg(mark1))
Wenn wir das obige Programm ausführen, lautet die Ausgabe:
AssertionError
Wir haben einen Fehler erhalten, als wir eine leere Liste mark1 an die assert
Anweisung übergeben haben. Die Bedingung wurde falsch und assert stoppt das Programm und gibt AssertionError
.
Lassen Sie uns nun eine weitere Liste übergeben, die die assert
Bedingung erfüllt, und sehen, was unsere Ausgabe sein wird.
Beispiel 2: Verwenden von assert mit Fehlermeldung
def avg(marks): assert len(marks) != 0,"List is empty." return sum(marks)/len(marks) mark2 = (55,88,78,90,79) print("Average of mark2:",avg(mark2)) mark1 = () print("Average of mark1:",avg(mark1))
Wenn wir das obige Programm ausführen, lautet die Ausgabe:
Durchschnitt von mark2: 78.0 AssertionError: Liste ist leer.
Wir haben eine nicht leere Liste mark2 und auch eine leere Liste mark1 an die avg()
Funktion übergeben und wir haben eine Ausgabe für die Liste mark2 erhalten, aber danach haben wir einen Fehler erhalten AssertionError: List is empty
. Die assert
Bedingung wurde von der mark2-Liste und dem Programm erfüllt, um weiter ausgeführt zu werden. Mark1 erfüllt jedoch nicht die Bedingung und gibt eine AssertionError
.
Wichtige Punkte, an die Sie sich erinnern sollten
- Zusicherungen sind die Bedingung oder der boolesche Ausdruck, die im Code immer wahr sein sollen.
assert
Anweisung akzeptiert einen Ausdruck und eine optionale Nachricht.assert
Die Anweisung wird verwendet, um Typen, Argumentwerte und die Ausgabe der Funktion zu überprüfen.assert
Die Anweisung wird als Debugging-Tool verwendet, da sie das Programm an der Stelle anhält, an der ein Fehler auftritt.