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:
class 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:
class 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:
try:
raise ToBigLength
except ToBigLength:
print('error: list is too big')
Po wykonaniu kodu wyświetli się:
'error: list is too big'
Utwórz wyjątek do przechwytywania liczby ujemnej.
Utwórz wyjątek do przechwytywania zera.