Påståendefel
Assertion är ett programmeringskoncept som används när man skriver en kod där användaren deklarerar ett villkor som sant med hjälp av hävda uttalande innan du kör modulen. Om tillståndet är Sann , flyttar kontrollen helt enkelt till nästa kodrad. I fall om det är det Falsk programmet slutar köra och återvänder AssertionError Undantag.
Funktionen av hävda uttalandet är detsamma oavsett vilket språk det är implementerat på, det är ett språkoberoende koncept, bara syntaxen varierar med programmeringsspråket.

Syntax för påstående:
hävda skick, felmeddelande (valfritt)
Exempel 1: Assertion error med error_message.
Python3
# AssertionError with error_message.> x>=> 1> y>=> 0> assert> y !>=> 0>,>'Invalid Operation'> # denominator can't be 0> print>(x>/> y)> |
>
kompatibilitetstestning
>
Utgång:
if else uttalande i java
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>
Standardexcepthanteraren i python kommer att skriva ut felmeddelandet skrivet av programmeraren, eller så kommer den bara att hantera felet utan något meddelande.
Båda sätten är giltiga.
Hantering av AssertionError undantag:
AssertionError ärvs från klassen Exception, när detta undantag inträffar och väcker AssertionError finns det två sätt att hantera, antingen användaren hanterar det eller standardexcepthanteraren.
I exempel 1 har vi sett hur standardexcepthanteraren fungerar.
Låt oss nu gräva på att hantera det manuellt.
Exempel 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)> |
>
>
Utgång:
Invalid Operation>
Praktiska tillämpningar.
Exempel 3: Testa ett program.
Python3
hur uppfann skolan
# 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>)> |
>
>
Utgång:
Roots of the quadratic equation are : 2.0 3.0 Roots are imaginary Roots of the quadratic equation are : -3.0 -3.0>
Detta är ett exempel för att visa hur detta undantag stoppar exekveringen av programmet så snart påståendevillkoret är falskt.
Andra användbara applikationer:
- Kontroll av parametrars värden.
- Kontrollerar giltig inmatning/typ.
- Upptäcker missbruk av ett gränssnitt av en annan programmerare.
- Kontrollera utdata från en funktion.