⊗pyPmExcCt 75 of 129 menu

Undantagshantering i Python

I Python jämfört med andra programmeringsspråk finns det många situationer som orsakar undantag.

Låt oss titta närmare på dem. Låt oss säga att vi har en lista:

lst = [1, 2, 3]

Låt oss försöka komma åt ett element i listan som inte finns:

print(lts[4])

Efter att koden har körts kommer ett fel (undantag) att visas:

IndexError: list index out of range

Om vi däremot behöver fortsätta arbeta utan att visa undantaget, bör vi fånga det med konstruktionen try-except. Den har följande syntax:

try: # kod som kan orsaka ett undantag except: # felhantering

I try-blocket ska du placera kod som kan innehålla ett undantag. Om det under körningen av denna kod uppstår ett undantag, kommer exekveringen av koden inte att stoppas, utan att gå vidare till koden i except-blocket. I detta block ska du skriva ut ett meddelande som så exakt som möjligt beskriver innebörden av felet som uppstod.

Om inga undantagssituationer uppstod när try-blocket kördes, kommer den användbara koden bara att köras, medan koden från except-blocket inte kommer att köras.

Låt oss fånga vårt undantag när vi försöker komma åt ett element i listan som inte finns. För att göra detta placerar vi koden med det potentiella felet i try-blocket. Och i except-blocket anger vi utskrift till konsolen av meddelandet 'error: elem is not exist':

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

Efter att koden har körts kommer följande att visas:

'error: elem is not exist'

Efter att ha studerat konstruktionen try-except bör stilen i din kod förändras. Nu måste alla platser där en undantagssituation kan uppstå lindas in i try, och i except-blocket skriva hur du hanterar detta undantag.

Be användaren om två tal. Dividera det ena med det andra. Fånga undantagssituationen division med noll.

Be användaren om ett tal. Ta kvadratroten ur detta tal. Fånga undantagssituationen när man tar roten ur ett negativt tal.

En lista är given. Be användaren om ett heltal. Hämta elementet i listan med det index som användaren angav. Fånga undantagssituationen som uppstår om användaren angav ett tal utanför listans indexintervall.

Följande kod är given:

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

Vad är fel med denna kod? Åtgärda dess brister.

Följande kod är given:

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

Vad är fel med denna kod? Åtgärda dess brister.

Svenska
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEspañolEestiSuomiFrançaisहिन्दीMagyarՀայերենIndonesiaItaliano日本語ქართულიҚазақ한국어КыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNederlandsNorskPolskiPortuguêsRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSrpskiKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
Vi använder kakor för webbplatsens funktion, analys och personalisering. Behandling av data sker i enlighet med Integritetspolicyn.
acceptera alla anpassa avvisa