Пользовательские исключения
Вы не обязаны ограничиваться встроенными исключениями, такими как IndexError: можно определять собственные исключения, точнее отражающие специфику вашего приложения. Кроме того, можно выстраивать иерархии исключений. Всё, что нужно для определения исключения, — это класс, унаследованный от встроенного класса Exception или одного из его подклассов.
Ранее в курсе вы определили класс Employee и использовали операторы print и значения по умолчанию для обработки таких ошибок, как создание сотрудника с зарплатой ниже минимальной или слишком большое повышение. Более правильный подход — использовать исключения. Поскольку эти ошибки специфичны для нашего приложения (в отличие, например, от деления на ноль, которое носит универсальный характер), имеет смысл применять пользовательские классы исключений.
Это упражнение является частью курса
Введение в объектно-ориентированное программирование на Python
Интерактивное практическое упражнение
Попробуйте выполнить это упражнение, дополнив этот пример кода.
# Define SalaryError inherited from ValueError
____
# Define BonusError inherited from SalaryError
____