logo

Python Hev nøkkelord

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.