Počas vykonávania programu sa objaví výnimka, ktorá v dôsledku chyby zmení svoj normálny tok. Výnimka vzniká z dôvodu chyby. Hlavnou príčinou výnimky je logická chyba. Rovnako ako mnoho iných programovacích jazykov, aj Python poskytuje niekoľko zabudovaných výnimiek, t.j.e., ZeroDivisionError, ImportError, EOFError atď.; napríklad výnimka ZeroDivisionError sa vyvolá, keď sa číslo vydelí nulou. Výnimky Pythonu sú spracované príkazom try. Definujeme blok try a vložíme do tohto bloku zraniteľný kód, čo môže spôsobiť výnimku. Ďalej po bloku try definujeme blok okrem, ktorý sa bude zaoberať výnimkou. Okrem všetkých týchto zabudovaných výnimiek musíme niekedy naraziť alebo vyvolať výnimku, keď narazíme na konkrétnu situáciu. Vývojár Pythonu môže ľahko definovať používateľom definovanú výnimku. Používame zvýšiť kľúčové slovo na zvýšenie alebo zrušenie výnimky. Tento článok vysvetľuje príklady použitia zvýšeného počtu kľúčových slov v Pythone na vyvolanie výnimky.
Syntax
Syntax na vyvolanie výnimky je veľmi jednoduchá a to nasledovne:
Zvýšiť výnimku („ľubovoľná správa“)Po napísaní kľúčového slova pre zvýšenie definujte svoju výnimku.
Príklad riešenia výnimiek
Po prvé, pozrime sa na príklad bloku try-except, ktorý hovorí, ako môžeme čeliť zabudovanej výnimke Pythonu, a potom uvidíme niekoľko príkladov vyhadzovania alebo zvyšovania výnimiek Pythonu. V príklade uvedenom nižšie sme vytvorili dve premenné. Hodnota druhej premennej sa rovná nule. Keď rozdelíme num1 na num2, vyvolá to „ZeroDivisionError“. Kód divízie spôsobí výnimku; preto je umiestnený vo vnútri bloku try. Blok okrem zachytí výnimku a vytlačí správu „Vyskytla sa neočakávaná chyba“.
#delarovanie číselnej premennejnum1 = 20
# deklarovanie premennej druhého čísla
num2 = 0
# implementácia bloku try
skúste:
výsledok = num1 / num2
okrem:
tlač („Vyskytla sa neočakávaná chyba“)
Výkon
Uveďte príklad výnimky
Poďme si teraz na príkladoch pochopiť, ako môžeme pomocou kľúčového slova Raise vyvolať alebo zvýšiť výnimku. V danom príklade vyvolávame výnimku, keď je číslo vydelené akýmkoľvek záporným číslom.
# deklarovanie premennej číslanum1 = 20
# deklarovanie premennej druhého čísla
num2 = -10
if (num2<0):
# zvýšenie výnimky
zvýšenie výnimky („Číslo 2 by nemalo byť záporné číslo“)
inak:
výsledok = num1 / num2
tlač (výsledok)
Výkon
Výstup ukazuje, že je vyvolaná výnimka „Číslo 2 by nemalo byť záporné číslo“.
Môžeme tiež definovať typ chyby. Poďme sa na to pozrieť.
# deklarovanie premennej číslanum1 = 20
# deklarovanie premennej druhého čísla
num2 = -10
if (num2<0):
# zvýšenie výnimky
zvýšiť TypeError ("Chyba záporného čísla")
inak:
výsledok = num1 / num2
tlač (výsledok)
Výkon
V danom príklade je definovaná chyba typu a na konzole sa vytlačí správa, že ide o chybu záporného čísla.
Pozrime sa na ďalší príklad uplatnenia výnimky Pythonu. Ak v danom príklade obsahuje zoznam ľubovoľnú neceločíselnú hodnotu, program vyvolá výnimku.
# deklarovanie zoznamumy_list = [1,2,3,7.7, „xyz“]
#implementovanie cyklu for
pre i v mojom zozname:
#kontrola typu každej položky zoznamu
ak nie, typ (i) je int:
#hodiť výnimku, ak typ prvku nie je celé číslo
zvýšenie výnimky ("Zoznam obsahuje neceločíselnú hodnotu")
inak:
tlač (i)
Výkon
Záver
Výnimka mení normálny priebeh programu, pokiaľ ide o chybu. V Pythone môžeme vyvolať výnimku, ktorú definujú používatelia. Na vylúčenie výnimky používame zabudované kľúčové slovo raise v Pythone. Tento článok vysvetľuje príklad uvádzania výnimiek na trh.