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:

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

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

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

Po provedení kodu se vypíše:

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

Vytvořte výjimku pro zachycení záporného čísla.

Задание 2

Vytvořte výjimku pro zachycení nuly.