Undantag och Felsökning
Vid programmering är fel oundvikliga. Vissa uppstår på grund av logiska misstag, andra uppstår under körning — som att dividera med noll, öppna en saknad fil eller konvertera ogiltig indata.
Dessa körtidsfel kallas undantag.
Python hanterar dem med blocken try och except, vilket gör att programmet kan återhämta sig eller visa ett tydligt meddelande istället för att krascha.
Vad är ett undantag?
Ett undantag är Pythons signal om att något oväntat har inträffat. Det stoppar normal körning och visar en felspårning om det inte hanteras.
Vanliga exempel:
ZeroDivisionError: division med noll;ValueError: ogiltigt värde, till exempel att konvertera"abc"till int;TypeError: inkompatibla typer, t.ex. tal + sträng;FileNotFoundError: öppna en saknad fil;IndexError: listindex utanför giltigt intervall;KeyError: saknad nyckel i dictionary.
Undantag är inbyggda klasser och kan fångas med except.
Hantering av undantag med Try och Except
Omslut riskabel kod i ett try-block för att undvika krascher.
Om ett fel uppstår går Python vidare till except-blocket.
Där kan du visa ett meddelande, logga detaljer eller vidta alternativa åtgärder.
Flera Except-block och Generell Fångst
Du kan hantera specifika fel med separata except-block,
eller använda en generell except för att fånga oväntade fel.
Flera undantagstyper kan också grupperas i ett block med hjälp av parenteser.
Else- och Finally-satser
Pythons felhantering kan även inkludera else och finally:
elsekörs endast om inget undantag inträffade;finallykörs alltid — även om ett undantag inträffade.
finally används ofta för att stänga filer eller frigöra resurser.
Felsökning med Print
Felsökning hjälper till att hitta vad som gick fel.
En enkel metod är att lägga till print()-satser för att spåra variabelvärden och programflöde.
Detta visar var fel uppstår och hjälper till att avgränsa problem.
Senare kan du använda avancerade felsökare, men print är alltid ett användbart första steg.
Sammanfattning
- Undantag är körtidsfel som division med noll eller saknade filer;
- Du kan hantera dem med hjälp av
try- ochexcept-block för att undvika krascher; - Använd specifika undantagstyper när det är möjligt, och
finallyför att städa upp resurser. print()är ditt första och snabbaste felsökningsverktyg.
Tack för dina kommentarer!
Fråga AI
Fråga AI
Fråga vad du vill eller prova någon av de föreslagna frågorna för att starta vårt samtal
What are some common exceptions in Python?
Can you explain what happens if an exception is not handled?
How do you identify where an exception occurred in your code?
Awesome!
Completion rate improved to 5
Undantag och Felsökning
Svep för att visa menyn
Vid programmering är fel oundvikliga. Vissa uppstår på grund av logiska misstag, andra uppstår under körning — som att dividera med noll, öppna en saknad fil eller konvertera ogiltig indata.
Dessa körtidsfel kallas undantag.
Python hanterar dem med blocken try och except, vilket gör att programmet kan återhämta sig eller visa ett tydligt meddelande istället för att krascha.
Vad är ett undantag?
Ett undantag är Pythons signal om att något oväntat har inträffat. Det stoppar normal körning och visar en felspårning om det inte hanteras.
Vanliga exempel:
ZeroDivisionError: division med noll;ValueError: ogiltigt värde, till exempel att konvertera"abc"till int;TypeError: inkompatibla typer, t.ex. tal + sträng;FileNotFoundError: öppna en saknad fil;IndexError: listindex utanför giltigt intervall;KeyError: saknad nyckel i dictionary.
Undantag är inbyggda klasser och kan fångas med except.
Hantering av undantag med Try och Except
Omslut riskabel kod i ett try-block för att undvika krascher.
Om ett fel uppstår går Python vidare till except-blocket.
Där kan du visa ett meddelande, logga detaljer eller vidta alternativa åtgärder.
Flera Except-block och Generell Fångst
Du kan hantera specifika fel med separata except-block,
eller använda en generell except för att fånga oväntade fel.
Flera undantagstyper kan också grupperas i ett block med hjälp av parenteser.
Else- och Finally-satser
Pythons felhantering kan även inkludera else och finally:
elsekörs endast om inget undantag inträffade;finallykörs alltid — även om ett undantag inträffade.
finally används ofta för att stänga filer eller frigöra resurser.
Felsökning med Print
Felsökning hjälper till att hitta vad som gick fel.
En enkel metod är att lägga till print()-satser för att spåra variabelvärden och programflöde.
Detta visar var fel uppstår och hjälper till att avgränsa problem.
Senare kan du använda avancerade felsökare, men print är alltid ett användbart första steg.
Sammanfattning
- Undantag är körtidsfel som division med noll eller saknade filer;
- Du kan hantera dem med hjälp av
try- ochexcept-block för att undvika krascher; - Använd specifika undantagstyper när det är möjligt, och
finallyför att städa upp resurser. print()är ditt första och snabbaste felsökningsverktyg.
Tack för dina kommentarer!