АКЦИЯ: бесплатные месячные курсы по созданию сайтов
на выбор: верстка, JavaScript, PHP, Python и фреймворки. Сегодня последний день для записи! Жми!
⊗pyPmExcThr 80 of 129 menu
Бесплатный ЛЕТНИЙ курс по React фреймворку NextJS. Мы уже начали, но еще можно присоединится! Жми для записи!

Выбрасывание своих типов исключений в Python

Исключения, находящиеся в Python по умолчанию, не всегда могут удовлетворить все наши потребности в различных ситуациях. Поэтому в Python встроена возможность создавать исключения своего типа.

Чтобы создать исключение, нужно объявить специальный класс ООП с помощью ключевого слова class. Справа от него прописывается имя исключения, а после имени в круглых скобках - тип исключения:

class Исключение(тип исключения): pass

Давайте создадим свой класс ToBigLength для перехвата слишком длинных списков. В круглых скобках данного класса пропишем тип исключения, которое он будет ловить. Пусть это будет исключение Exception. В теле класса пока можно прописать pass:

class ToBigLength(Exception): pass

Давайте проверим работу только что созданного исключения. Для этого пропишем конструкцию try-except, а наше исключение выбросим с помощью специальной команды raise:

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

После выполнения кода выведется:

'error: list is too big'

Создайте исключение для перехвата отрицательного числа.

Создайте исключение для перехвата нуля.

enru