Oma erandite tüüpide loomine Pythonis
Pythonis vaikimisi olevad erandid ei pruugi alati rahuldada kõiki meie vajadusi erinevates olukordades. Seetõttu on Pythonisse sisseehitatud võimalus luua oma tüüpi erandeid.
Erandi loomiseks tuleb deklareerida
spetsiaalne OOP-klassi, kasutades võtmesõna
class. Sellest paremale
kirjutatakse erandi nimi ja pärast nime
ümara sulgudes - erandi tüüp:
class Erand(erandi tüüp):
pass
Loome oma klassi ToBigLength
liiga pikkade loendite püüdmiseks.
Selle klassi ümarsulgudesse kirjutame
erandi tüübi, mida see püüdma hakkab.
Olgu selleks erand Exception.
Klassi kehas võib praegu kirjutada pass:
class ToBigLength(Exception):
pass
Katsetame just loodud erandi tööd.
Selleks kirjutame konstruktsiooni
try-except ja käivitame oma erandi
spetsiaalse käsuga raise:
try:
raise ToBigLength
except ToBigLength:
print('error: list is too big')
Pärast koodi täitmist kuvatakse:
'error: list is too big'
Loo erand negatiivse arvu püüdmiseks.
Loo erand nulli püüdmiseks.