Alle fag › Programmering med Python › Feilhåndtering

Feilhåndtering

Når noe går galt under kjøring, kaster Python et unntak, for eksempel ValueError når tekst ikke kan gjøres om til tall. Med try og except fanger du unntaket og bestemmer selv hva som skal skje, i stedet for at programmet krasjer.

try: ... except ValueError: ...\texttt{try: ... except ValueError: ...}fang en bestemt feiltype
finally: ...\texttt{finally: ...}kjøres alltid, med eller uten feil
raise ValueError("...")\texttt{raise ValueError("...")}kast en feil selv

Symboler

ValueError\texttt{ValueError}feil verdi, f.eks. int("abc")
ZeroDivisionError\texttt{ZeroDivisionError}deling på null
FileNotFoundError\texttt{FileNotFoundError}fila finnes ikke

Eksempel

Les et tall trygt fra brukeren:

try: x = float(s)\texttt{try: x = float(s)}, og ved except ValueError\texttt{except ValueError} spør du på nytt.

Fang så spesifikke feil som mulig. En tom except skjuler ekte programmeringsfeil.
Øv på filer, feil og moduler gratis →

← Lese og skrive filer · Moduler og import →

Del av Programmering med Python: Filer, feil og moduler.