Vyhadzovanie vlastných typov výnimiek v Pythone

Výnimky, ktoré sú v Pythone predvolené, nemusia vždy uspokojiť všetky naše potreby v rôznych situáciách. Preto je v Python vstavaná možnosť vytvárať výnimky vlastného typu.

Ak chcete vytvoriť výnimku, musíte deklarovať špeciálnu triedu OOP pomocou kľúčového slova class. Napravo od neho sa napíše názov výnimky a za názvom v okrúhlych zátvorkách - typ výnimky:

pythonclass Výnimka(typ výnimky):
  pass

Vytvorme si vlastnú triedu ToBigLength na zachytenie príliš dlhých zoznamov. Do okrúhlych zátvoriek tejto triedy napíšme typ výnimky, ktorú bude chytať. Nech je to výnimka Exception. V tele triedy môžeme zatiaľ napísať pass:

pythonclass ToBigLength(Exception):
  pass

Vyskúšajme si prácu práve vytvorenej výnimky. Aby sme to urobili, napíšme konštrukciu try-except a našu výnimku vyhoďme pomocou špeciálneho príkazu raise:

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

Po vykonaní kódu sa vypíše:

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

Vytvorte výnimku na zachytenie záporného čísla.

Задание 2

Vytvorte výnimku na zachytenie nuly.