Å kaste egne unntakstyper i Python
Unntakene som finnes i Python som standard, kan ikke alltid tilfredsstille alle våre behov i ulike situasjoner. Derfor har Python en innebygd mulighet for å opprette unntak av egne typer.
For å opprette et unntak, må du deklarere
en spesiell OOP-klasse ved å bruke nøkkelordet
class. Til høyre for det
skrives navnet på unntaket, og etter navnet
i parentes - typen unntak:
class Unntak(unntakstype):
pass
La oss opprette vår egen klasse ToBigLength
for å fange opp lister som er for lange. I
parentesene til denne klassen skriver vi
typen unntak den skal fange.
La det være unntaket Exception.
I klassen kan vi foreløpig skrive pass:
class ToBigLength(Exception):
pass
La oss teste det nyopprettede unntaket.
For å gjøre dette skriver vi try-except-konstruksjonen,
og kaster unntaket vårt
ved hjelp av det spesielle kommandoen raise:
try:
raise ToBigLength
except ToBigLength:
print('error: list is too big')
Etter kjøring av koden vil følgende skrives ut:
'error: list is too big'
Opprett et unntak for å fange opp et negativt tall.
Opprett et unntak for å fange opp null.