⊗pyPmExcFu 82 of 129 menu

Funcție cu excepție în Python

Excepțiile sunt foarte convenabile de aruncat, prin specificarea lor în funcții cu ajutorul condițiilor.

Haideți să facem o funcție get_sum, care va returna suma elementelor listei doar dacă lungimea listei este mai mică sau egală cu 3. În caz contrar, să fie aruncată excepția noastră ToBigLength:

def get_sum(lst): if len(lst) <= 3: return sum(lst) else: raise ToBigLength

Acum să transmitem în funcția get_sum o listă și să afișăm rezultatul funcției în consolă:

lst = [1, 2, 3, 4] print(get_sum(lst)) # va afișa 6

De asemenea, în funcții se poate specifica interceptarea mai multor tipuri de excepții. Haideți să creăm încă o clasă de excepții ToSmallLength:

class ToSmallLength(Exception): pass

Acum să specificăm în funcție condiția, dacă lungimea listei este egală cu zero, atunci să fie aruncată excepția ToSmallLength. Dacă nici o excepție nu este aruncată, atunci să fie returnată suma tuturor elementelor listei:

def get_sum(lst): if len(lst) > 3: raise ToBigLength if len(lst) == 0: raise ToSmallLength else: return sum(lst)

Pentru comoditate, putem include lista care va fi transmisă în parametrul funcției, funcția însăși și apelul ei într-un bloc try. Iar interceptarea celor două excepții o vom plasa în blocurile except:

try: lst = [1, 2, 3] res = get_sum(lst) print(res) except ToBigLength: print('error 1') except ToSmallLength: print('error 2')

Creați o funcție care ca parametru va primi un număr. În ea specificați condiții: dacă numărul este negativ sau egal cu zero, atunci să fie aruncate excepțiile corespunzătoare. în caz contrar numărul să fie înmulțit cu 3.

Verificați funcționarea funcției create de dvs. cu ajutorul construcției try-except. În același timp interceptați și excepțiile dvs.

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