Moduł szósty stanowi kompleksowe omówienie zaawansowanych mechanizmów obsługi wyjątków w języku Python, przeznaczony dla średniozaawansowanych programistów. Omówiono w nim hierarchię wyjątków dziedziczącą po klasie BaseException, pełną składnię try-except-else-finally oraz techniki aliasowania i przechwytywania wielu błędów jednocześnie. Przedstawiono również tworzenie własnych klas wyjątków, instrukcję raise do jawnego zgłaszania błędów oraz łączenie wyjątków za pomocą Exception Chaining. Kolejne zagadnienia to menedżery kontekstu z protokołem with, dekorator contextmanager z modułu contextlib, a także wprowadzone w Pythonie 3.11 grupy wyjątków ExceptionGroup ze składnią except*. Całość wieńczy omówienie dobrych praktyk, takich jak unikanie łapania ogólnego Exception, cichego ignorowania błędów oraz stosowanie precyzyjnych komunikatów zgodnych ze standardem PEP 8.
Kluczowe zagadnienia modułu:
- Hierarchia wyjątków — zasady dziedziczenia po klasach BaseException i Exception
- Składnia try-except-else-finally — pełna obsługa błędów z blokami else i finally
- Aliasowanie i wiele błędów — przechwytywanie wielu wyjątków w jednym bloku except
- Własne wyjątki, raise i Exception Chaining — tworzenie klas błędów, jawne zgłaszanie i łączenie wyjątków
- Menedżery kontekstu i ExceptionGroup — protokół with, dekorator @contextmanager i grupy wyjątków z Pythona 3.11
- Dobre praktyki obsługi błędów — precyzyjne komunikaty i unikanie antywzorców zgodnie z PEP 8


















































