⊗pyPmExcDTC 77 of 129 menu

Zachytávanie rôznych typov výnimiek v Pythone

V rovnakom kóde môže byť potrebné zachytiť rôzne typy výnimiek.

Povedzme, že potrebujeme zachytiť výnimku pri delení nulou. Pri tomto type chyby vypadne výnimka:

ZeroDivisionError: division by zero

Ak ju chceme zachytiť, názov výnimky by mal byť zadaný v bloku except:

try: print(1 / 0) except ZeroDivisionError: print('error: do not divide by zero')

Tiež povedzme, že máme zoznam:

lst = [1, 2, 3]

Ak v bloku try zadáme kód s inou potenciálnou chybou, napríklad s výpisom neexistujúceho prvku, tak výnimka, ktorá nie je zachytená v bloku except, prejde ďalej a vypíše sa do konzoly. Kvôli čomu sa zastaví činnosť kódu:

lst = [1, 2, 3] try: print(lst[4]) # vypíše IndexError: list index out of range except ZeroDivisionError: print('error: do not divide by zero')

Na vyriešenie tejto situácie je potrebné uviesť v každom bloku názov príslušného typu výnimky. Pridajme do nášho kódu výnimku pre chýbajúci prvok:

try: print(lst[4]) except ZeroDivisionError: print('error: do not divide by zero') except IndexError: print('error: elem is not exist')

Daný je nasledujúci kód:

txt = '2' res1 = txt + 3 res2 = txt1

Napíšte kód na zachytenie prezentovaných v premenných res1 a res2 výnimiek.

Slovenčina
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEspañolEestiSuomiFrançaisहिन्दीMagyarՀայերենIndonesiaItaliano日本語ქართულიҚазақ한국어КыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNederlandsNorskPolskiPortuguêsRomânăРусскийසිංහලSlovenščinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
Používame cookies na fungovanie stránky, analýzu a personalizáciu. Spracúvanie údajov prebieha v súlade s Politikou ochrany osobných údajov.
prijať všetky nastaviť odmietnuť