logo

Python | Påstandsfeil

Påstandsfeil
Assertion er et programmeringskonsept som brukes mens han skriver en kode der brukeren erklærer en tilstand som sann ved hjelp av hevde uttalelse før du kjører modulen. Hvis tilstanden er ekte , flytter kontrollen ganske enkelt til neste kodelinje. I tilfelle hvis det er det Falsk programmet slutter å kjøre og kommer tilbake AssertionError Unntak.

Funksjonen til hevde setningen er den samme uavhengig av språket den er implementert på, den er et språkuavhengig konsept, bare syntaksen varierer med programmeringsspråket.



Syntaks for påstand:
hevde tilstand, feilmelding (valgfritt)

Eksempel 1: Påstandsfeil med feilmelding.



Python3






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

>

java kast unntak
>

Utgang:

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>

Standard unntaksbehandler i python vil skrive ut error_meldingen skrevet av programmereren, ellers vil den bare håndtere feilen uten noen melding.
Begge måtene er gyldige.

Håndtering av AssertionError-unntak:
AssertionError er arvet fra Exception-klassen, når dette unntaket oppstår og øker AssertionError er det to måter å håndtere det på, enten brukeren håndterer det eller standard unntaksbehandler.
I eksempel 1 har vi sett hvordan standard unntaksbehandler gjør arbeidet.
La oss nå grave i å håndtere det manuelt.

Eksempel 2

Python3

USA hvor mange byer




# 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)>

>

>

Utgang:

Invalid Operation>

Praktiske applikasjoner.
Eksempel 3: Testing av et program.

Python3




# 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>)>

>

array liste java
>

Utgang:

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

Dette er et eksempel for å vise hvordan dette unntaket stopper kjøringen av programmet så snart påstandsbetingelsen er falsk.

Andre nyttige applikasjoner:

  • Kontroll av parameterverdier.
  • Kontrollerer gyldig inndata/type.
  • Oppdager misbruk av et grensesnitt av en annen programmerer.
  • Kontroller utgang av en funksjon.