Väitevirhe
Väite on ohjelmointikonsepti, jota käytetään kirjoitettaessa koodia, jossa käyttäjä ilmoittaa ehdon olevan tosi väittää lausunto ennen moduulin suorittamista. Jos ehto on Totta , säädin siirtyy vain seuraavalle koodiriville. Siinä tapauksessa, jos on Väärä ohjelma pysähtyy ja palaa AssertionError Poikkeus.
Toiminto väittää lauseke on sama riippumatta siitä, millä kielellä se on toteutettu, se on kielestä riippumaton käsite, vain syntaksi vaihtelee ohjelmointikielen mukaan.

Väitteen syntaksi:
väittää ehto, error_message (valinnainen)
Esimerkki 1: Väitevirhe virheviestillä.
Python 3
# AssertionError with error_message.> x>=> 1> y>=> 0> assert> y !>=> 0>,>'Invalid Operation'> # denominator can't be 0> print>(x>/> y)> |
>
konekirjoitus kukin
>
Lähtö:
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>
Pythonin oletuspoikkeuskäsittelijä tulostaa ohjelmoijan kirjoittaman error_message-viestin, tai muuten vain käsittelee virheen ilman viestiä.
Molemmat tavat ovat päteviä.
AssertionError-poikkeuksen käsittely:
AssertionError on peritty Exception-luokasta, kun tämä poikkeus tapahtuu ja aiheuttaa AssertionError-tiedoston, on kaksi tapaa käsitellä sitä, joko käyttäjä käsittelee sitä tai oletusarvoinen poikkeuskäsittelijä.
Esimerkissä 1 olemme nähneet kuinka oletuspoikkeuskäsittelijä toimii.
Perehdytään nyt sen manuaaliseen käsittelyyn.
Esimerkki 2
Python 3
# 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)> |
rekursio javassa
>
>
Lähtö:
Invalid Operation>
Käytännön sovellukset.
Esimerkki 3: Ohjelman testaus.
Python 3
# 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>>>,>'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>)> |
>
>
Lähtö:
merkkijonomuoto javassa
Roots of the quadratic equation are : 2.0 3.0 Roots are imaginary Roots of the quadratic equation are : -3.0 -3.0>
Tämä on esimerkki siitä, kuinka tämä poikkeus pysäyttää ohjelman suorittamisen heti, kun väiteehto on False.
Muita hyödyllisiä sovelluksia:
- Parametrien arvojen tarkistus.
- Tarkistetaan kelvollista syötettä/tyyppiä.
- Toisen ohjelmoijan käyttöliittymän väärinkäytön havaitseminen.
- Tarkistetaan funktion ulostuloa.