⊗pyPmExcCt 75 of 129 menu

Interceptarea excepțiilor în Python

În Python, în comparație cu alte limbaje de programare, există foarte multe situații care generează excepții.

Să le analizăm mai detaliat. Să presupunem că avem o listă:

lst = [1, 2, 3]

Să accesăm un element inexistent al listei:

print(lts[4])

După executarea codului, va apărea o eroare (excepție):

IndexError: list index out of range

Dacă, totuși, trebuie să continuăm lucrul fără a afișa excepția, aceasta trebuie prinsă cu ajutorul construcției try-except. Ea are următoarea sintaxă:

try: # cod care poate genera o excepție except: # tratarea erorii

În blocul try trebuie plasat codul care poate conține o excepție. Dacă la executarea acestui cod apare o situație excepțională, atunci executarea codului nu se va opri, ci va trece în codul blocului except. În acest bloc trebuie specificat afișarea unui mesaj care descrie cât mai exact esența erorii apărute.

Dacă la executarea blocului try nu apar situații excepționale, atunci codul util va fi executat, iar codul din blocul except - nu.

Să prindem excepția noastră la accesarea unui element inexistent al listei. Pentru aceasta, în blocul try plasăm codul cu eroarea potențială. Iar în blocul except specificăm afișarea în consolă a mesajului 'error: elem is not exist':

lst = [1, 2, 3] try: print(lst[4]) except: print('error: elem is not exist')

După executarea codului se va afișa:

'error: elem is not exist'

După studierea construcției try-except stilul codului scris de dvs. ar trebui să se schimbe. Acum toate locurile în care poate apărea o situație excepțională, trebuie să fie împachetate în try, iar în blocul except să fie specificată reacția la această excepție.

Cereți utilizatorului două numere. Împărțiți unul la celălalt. Prindeți situația excepțională de împărțire la zero.

Cereți utilizatorului un număr. Găsiți rădăcina pătrată a acestui număr. Prindeți situația excepțională de extragere a rădăcinii dintr-un număr negativ.

Este dată o listă. Cereți utilizatorului un număr întreg. Obțineți elementul listei, al cărui index l-a introdus utilizatorul. Prindeți situația excepțională care va apărea dacă utilizatorul a introdus un număr în afara intervalului listei.

Este dat următorul cod:

num = '5' res = num + 2 print(res)

Ce nu este în regulă cu acest cod? Corectați-i neajunsurile.

Este dat următorul cod:

lst = [1, 2, 3, 4] def getElem(iter): print(iter[4]) getElem(lst)

Ce nu este în regulă cu acest cod? Corectați-i neajunsurile.

Română
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEspañolEestiSuomiFrançaisहिन्दीMagyarՀայերենIndonesiaItaliano日本語ქართულიҚазақ한국어КыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNederlandsNorskPolskiPortuguêsРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
Folosim cookie pentru funcționarea site-ului, analiză și personalizare. Prelucrarea datelor are loc în conformitate cu Politica de confidențialitate.
acceptă toate configurează respinge