⊗pyPmExcDTC 77 of 129 menu

Įvairių tipų išimčių perėmimas Python kalboje

Viename ir tame pačiame kode gali prireikti perimti įvairių tipų išimtis.

Tarkime, kad mums reikia pagauti išimtį dalijant iš nulio. Esant tokio tipo klaidai, iškyla išimtis:

ZeroDivisionError: division by zero

Kad ją pagautumėte, išimties pavadinimą reikia įrašyti except bloke:

try: print(1 / 0) except ZeroDivisionError: print('klaida: nedalinkite iš nulio')

Taip pat tarkime, kad turime sąrašą:

lst = [1, 2, 3]

Jei try bloke parašysite kodą su kita potencialia klaida, pavyzdžiui, su neegzistuojančio elemento išvedimu, tai išimtis, nepagauta except bloke, praeis toliau ir bus išvesta į konsolę. Dėl to sustos kodo veikimas:

lst = [1, 2, 3] try: print(lst[4]) # išves IndexError: list index out of range except ZeroDivisionError: print('klaida: nedalinkite iš nulio')

Norint išspręsti tokią situaciją, reikia nurodyti kiekviename bloke atitinkamo tipo išimčių pavadinimą. Pridėkime prie mūsų kodo išimtį dėl trūkstamo elemento:

try: print(lst[4]) except ZeroDivisionError: print('klaida: nedalinkite iš nulio') except IndexError: print('klaida: elementas neegzistuoja')

Duotas toks kodas:

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

Parašykite kodą, kad perimtumėte pateiktas kintamuosiuose res1 ir res2 išimtis.

Lietuvių
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEspañolEestiSuomiFrançaisहिन्दीMagyarՀայերենIndonesiaItaliano日本語ქართულიҚазақ한국어КыргызчаLatviešuМакедонскиMelayuမြန်မာNederlandsNorskPolskiPortuguêsRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
Mes naudojame slapukus svetainės veikimui, analizei ir personalizavimui. Duomenų apdorojimas vyksta pagal Privatumo politiką.
priimti visus nustatyti atšaukti