Pythoni viske erand

Python Throw Exception



Erand ilmub programmi täitmise ajal ja muudab vea tõttu tavapärast voogu. Erand tuleneb veast. Erandi peamine põhjus on loogiline viga. Nagu paljud teised programmeerimiskeeled, pakub ka Python mitmeid sisseehitatud erandeid, nt ZeroDivisionError, ImportError, EOFError jne; Näiteks tõuseb ZeroDivisionError erand, kui number on jagatud nulliga. Pythoni erandeid käsitleb lause try. Me määratleme prooviploki ja paneme koodi haavatava koodi sellesse plokki, mis võib tekitada erandi. Järgmisena määratleme pärast prooviplokki erandiga tegelemiseks välja arvatud ploki. Lisaks kõikidele nendele sisseehitatud eranditele peame mõnikord konkreetse olukorra korral erandit tõstma või viskama. Pythoni arendaja saab kasutaja määratud erandi hõlpsalt visata. Me kasutame tõsta märksõna erandi tõstmiseks või viskamiseks. Selles artiklis selgitatakse näidetega Pythoni tõsta märksõnade kasutamist erandi esitamisel.







Süntaks

Erandi viskamise süntaks on väga lihtne ja järgmine:



TõstaErand(mis tahessõnum)

Pärast tõstmise märksõna kirjutamist määrake oma erand.



Erandite käsitlemise näide

Esiteks, näeme proovivälise ploki näidet, kuidas toime tulla Pythoni sisseehitatud erandiga, ja pärast seda näeme mõningaid näiteid Pythoni erandite viskamisest või tõstmisest. Allpool toodud näites oleme loonud kaks muutujat. Teise muutuja väärtus on null. Kui jagame numbri numbri num2 -ga, tõuseb see ZeroDivisionError. Jaotuskood loob erandi; seetõttu paigutatakse see prooviploki sisse. Välja arvatud plokk püüab erandi ja prindib teate Ilmnes ootamatu tõrge.





#arvumuutuja deklareerimine
num1=kakskümmend
#deklareeriv teise numbri muutuja
num2=0
#prooviploki rakendamine
proovige:
tulemus=number1/num2
välja arvatud:
printida('Ilmnes ootamatu viga')

Väljund



Tooge erandlik näide

Mõistame nüüd näidete kaudu, kuidas tõste märksõna abil erandeid teha või tõsta. Antud näites tõstame erandi, kui arv jagatakse mis tahes negatiivse arvuga.

#arvumuutuja deklareerimine
num1=kakskümmend
#deklareeriv teise numbri muutuja
num2=-10
kui(num2<0):
#tõsta erandit
tõsta Erand('Number 2 ei tohiks olla negatiivne arv')
muidu:
tulemus=number1/num2
printida(tulemus)

Väljund

Väljund näitab, et erandit Arv 2 ei tohiks olla negatiivne.

Samuti saame määratleda vea tüübi. Vaatame seda.

#arvumuutuja deklareerimine
num1=kakskümmend
#deklareeriv teise numbri muutuja
num2=-10
kui(num2<0):
#tõsta erandit
tõsta TüüpViga(„Negatiivse arvu viga”)
muidu:
tulemus=number1/num2
printida(tulemus)

Väljund

Antud näites on määratletud tüübiviga ja see prindib konsoolile teate, et tegemist on negatiivse numbri veaga.

Vaatame veel ühte näidet Pythoni erandi viskamisest. Kui antud näites on loendis mis tahes täisarvuta väärtus, loob programm erandi.

#nimekirja kuulutamine
my_list=[1,2,3,7.7,'xyz']
#silmuse jaoks rakendamine
eestisissemy_list:
#kontrollige iga loendiüksuse tüüpi
kui mitte tüüpi(i) on int:
#heite tegemine, kui elemendi tüüp ei ole täisarv
tõsta Erand('Loend sisaldab täisarvu väärtust')
muidu:
printida(i)

Väljund

Järeldus

Erand muudab programmi tavapärast voogu seoses veaga. Pythonis saame visata erandi, mille määratlevad kasutajad. Erandi tegemiseks kasutame Pythoni sisseehitatud tõstmise märksõna. See artikkel selgitab eranditega viskamise kontseptsiooni näidetega.