Tworzenie własnych typów wyjątków w Pythonie

Wyjątki dostępne domyślnie w Pythonie nie zawsze mogą zaspokoić wszystkie nasze potrzeby w różnych sytuacjach. Dlatego Python ma wbudowaną możliwość tworzenia wyjątków własnego typu.

Aby utworzyć wyjątek, należy zadeklarować specjalną klasę OOP za pomocą słowa kluczowego class. Po prawej stronie podaje się nazwę wyjątku, a po nazwie w okrągłych nawiasach - typ wyjątku:

pythonclass Wyjatek(typ wyjatku):
  pass

Stwórzmy własną klasę ToBigLength do przechwytywania zbyt długich list. W okrągłych nawiasach tej klasy wskażemy typ wyjątku, który będzie ona łapać. Niech to będzie wyjątek Exception. W ciele klasy na razie można wpisać pass:

pythonclass ToBigLength(Exception):
  pass

Sprawdźmy działanie właśnie utworzonego wyjątku. W tym celu napiszmy konstrukcję try-except, a nasz wyjątek zgłośmy za pomocą specjalnej komendy raise:

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

Po wykonaniu kodu wyświetli się:

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

Utwórz wyjątek do przechwytywania liczby ujemnej.

Задание 2

Utwórz wyjątek do przechwytywania zera.