Hantering av undantag är effektivt viktigt för att skriva robusta Python-program. Korrekt undantagshantering hjälper till att förhindra kraschar och säkerställer att programmet kan återställa eller ge meningsfull feedback när fel uppstår.
Förstå Python Undantag
Undantag är fel som stör det normala flödet av ett program. Python har inbyggda undantagsklasser, såsom ]]ValueError ]] och ]]TypeError ]], som höjs när specifika problem uppstår. Att erkänna dessa undantag gör det möjligt för utvecklare att hantera fel graciöst.
Använda try-except block
Den primära metoden för att hantera undantag i Python är ] torrt-utom ]] block. Kod som kan höja ett undantag placeras inuti ] torg ]]] block, medan felhanteringskoden placeras inuti ]]] block.
Exempel:
] [[
] x= int(inmatning("Ange ett nummer: "))
]] ]]] förutom ValueError:[
]]] print("Invalid input. Vänligen ange ett giltigt tal.")
Hantera flera undantag
Flera undantag kan hanteras genom att lägga till flera förutom ]] block. Detta möjliggör specifika svar på olika feltyper.
Exempel:
] [[
]]] resultat = 10/div
]]] förutom ZeroDivisionError:
print("Kan inte delas med noll]
] förutom Typerror:
[
[[[[[[[[[[[[[[[[[FL]]]]]]]]]][[[[[[[[[[[[[[[[[[[FL]]]]]]]]]]]]]]]]]]]][[[[[[[[[[[[[[[FL]]]]]]]]]]]]]]]]]]]]]]]]
Använda äntligen och annat
]] slutligen ]] blocket avrättar kod oavsett om ett undantag inträffade. ][]]] blocket körs om inget undantag höjs.
Exempel:
] [[
]]] fil = open("data.txt", "r")
] förutom FileNotFoundError:
]
[[FL]][FL][[[F]]]][F][F]][[[[[[[[F]]]]]]]]]]]]]]][[[[[[[[[[[F]]]]]]]]]]]]]]]]]][[[[[[[[[[[[[[[[[F]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]][[F]]][[F][F]]]
Bästa praxis för undantagshantering
- Fånga specifika undantag istället för att använda en allmän förutom: ]].
- Undvik att använda undantag för kontrollflöde.
- Logga undantag för felsökningsändamål.
- Använd slutligen ] för att släppa resurser.