Att skapa och kasta egna undantagstyper i Python
Undantagen som finns i Python som standard kan inte alltid tillgodose alla våra behov i olika situationer. Därför har Python en inbyggd möjlighet att skapa egna undantagstyper.
För att skapa ett undantag måste man deklarera
en speciell OOP-klass med hjälp av nyckelordet
class. Till höger om det
skrivs undantagets namn, och efter namnet
i runda parenteser - undantagstypen:
class Undantag(undantagstyp):
pass
Låt oss skapa vår egen klass ToBigLength
för att fånga upp för långa listor. I
de runda parenteserna för denna klass skriver vi
typen av undantag som den kommer att fånga.
Låt det vara undantaget Exception.
I klasskroppen kan man för närvarande skriva pass:
class ToBigLength(Exception):
pass
Låt oss testa funktionen av det nyskapade
undantaget. För att göra detta skriver vi konstruktionen
try-except, och vårt undantag
kastar vi med hjälp av det speciella kommandot raise:
try:
raise ToBigLength
except ToBigLength:
print('error: list is too big')
Efter att koden har körts kommer följande att skrivas ut:
'error: list is too big'
Skapa ett undantag för att fånga upp negativa tal.
Skapa ett undantag för att fånga upp nollor.