Vytváření vlastních typů výjimek v Pythonu
Výjimky, které jsou v Pythonu ve výchozím nastavení, nemusí vždy uspokojit všechny naše potřeby v různých situacích. Proto je v Pythonu vestavěna možnost vytvářet výjimky vlastního typu.
Chcete-li vytvořit výjimku, je třeba deklarovat
speciální třídu OOP pomocí klíčového
slova class. Napravo od něj
je uveden název výjimky a za názvem
v kulatých závorkách - typ výjimky:
class Výjimka(typ výjimky):
pass
Vytvořme vlastní třídu ToBigLength
pro zachycení příliš dlouhých seznamů. Do
kulatých závorek této třídy napíšeme
typ výjimky, kterou bude zachytávat.
Nechť je to výjimka Exception.
V těle třídy lze prozatím napsat pass:
class ToBigLength(Exception):
pass
Ověřme funkčnost právě vytvořené
výjimky. K tomu napíšeme konstrukci
try-except a naši výjimku
vyhodíme pomocí speciálního příkazu raise:
try:
raise ToBigLength
except ToBigLength:
print('error: list is too big')
Po provedení kodu se vypíše:
'error: list is too big'
Vytvořte výjimku pro zachycení záporného čísla.
Vytvořte výjimku pro zachycení nuly.