I denne artikkelen vil vi lære hvordan Python Raise-søkeordet fungerer ved hjelp av eksempler og dets fordeler.
Python Hev nøkkelord
Python heve søkeord brukes til å ta opp unntak eller feil. Rave-nøkkelordet gir en feil og stopper kontrollflyten til programmet. Den brukes til å hente opp gjeldende unntak i en unntaksbehandler slik at det kan håndteres lenger opp i anropsstakken.
Python Raise Syntaks
heve {name_of_ the_ exception_class}
Den grunnleggende måten å få opp en feil på er:
heve unntak (brukertekst)
Sjekker om et heltall er oddetall eller partall
I koden nedenfor sjekker vi om et heltall er partall eller oddetall. hvis heltall er oddetall, oppstår et unntak. a er en variabel som vi har tildelt et tall 5, ettersom a er oddetall, så hvis loop sjekker om det er et oddetall, er det et oddetall, oppstår det en feil.
Python3
a>=> 5> if> a>%> 2> !>=> 0>:> >raise> Exception(>'The number shouldn't be an odd integer'>)> |
konverter int til streng java
>
>
Produksjon:

Kontrollerer feiltype
Vi kan sjekke typen feil som har oppstått under kjøringen av koden vår. Feilen kan være en 'ValueError' eller a 'ZeroDivisionError' eller en annen type feil.
Syntaks: heve TypeError
rask sortering
Kontrollerer feiltypen
I koden nedenfor prøvde vi å endre strengen 'eple' tildelt s til heltall og skrev en try-except-klausul for å øke ValueError. Nøkkelordet raise error gir en verdifeil med meldingen Strengen kan ikke endres til et heltall.
Python3
s>=> 'apple'> try>:> >num>=> int>(s)> except> ValueError:> >raise> ValueError(>'String can't be changed into integer'>)> |
>
>
Produksjon
strengsammenkobling java

Heve et unntak uten å spesifisere unntaksklasse
Når vi bruker søkeordet raise, er det ingen tvang til å gi en unntaksklasse sammen med det. Når vi ikke gir noe unntaksklassenavn med raise-nøkkelordet, gjenopphever det unntaket som sist skjedde.
Eksempel
I koden ovenfor prøvde vi å endre strengen 'eple' til heltall og skrev en try-except-klausul for å øke ValueError. Koden er den samme som før, bortsett fra at vi ikke tilbyr en unntaksklasse, den gjenoppretter unntaket som sist skjedde.
Python3
s>=> 'apple'> try>:> >num>=> int>(s)> except>:> >raise> |
>
>
Produksjon:

Fordeler med søkeordet raise
- Det hjelper oss å ta opp feilunntak når vi kan komme inn i situasjoner der utførelse ikke kan fortsette.
- Det hjelper oss å få opp feil i Python som fanges opp.
- Raise lar oss gjøre ett unntak når som helst.
- Det er nyttig når vi ønsker å jobbe med inputvalideringer.