Å 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:

pythonclass 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:

pythonclass 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:

pythontry:
  raise ToBigLength
except ToBigLength:
  print('error: list is too big')

Etter kjøring av koden vil følgende skrives ut:

python'error: list is too big'
Задание 1

Opprett et unntak for å fange opp et negativt tall.

Задание 2

Opprett et unntak for å fange opp null.