⊗pyPmExcFu 82 of 129 menu

Funkcija su išimtimi Python kalboje

Išimtis labai patogu mesti, progamuojant jas funkcijose naudojant sąlygas.

Sukurkime funkciją get_sum, kuri išvestų elementų sumą sąrašo tik jeigu sąrašo ilgis mažesnis arba lygus 3. Priešingu atveju, tegu išmetama mūsų išimtis ToBigLength:

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

Dabar perduokime į funkciją get_sum sąrašą ir išveskime funkciją į konsolę:

lst = [1, 2, 3, 4] print(get_sum(lst)) # išves 6

Taip pat funkcijose galima nustatyti kelių tipų išimčių perėmimą. Sukurkime dar vieną išimčių klasę ToSmallLength:

class ToSmallLength(Exception): pass

Dabar nurodykime funkcijoje sąlygą, jei sąrašo ilgis lygus nuliui, tegu išmetama ToSmallLength. Jei nepavyksta perimti jokios išimties, tegu išvedama visų sąrašo elementų suma:

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

Patogumui galima apjungti sąrašą, kuris bus perduodamas į funkcijos parametrą, pačią funkciją ir jos iškvietimą į try bloką. O mūsų dviejų išimčių perėmimą patalpinkime except blokuose:

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

Sukurkite funkciją, kuri parametru bus priimti skaičių. Joje nurodykite sąlygas, jei skaičius neigiamas ir lygus nuliui, tegu išmetamos atitinkamos išimtys. kitu atveju tegu skaičius bus padaugintas iš 3.

Patikrinkite sukurtos jūsų funkcijos veikimą naudodami konstrukciją try-except. Be to taip pat perimkite jūsų 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