Пользовательские исключения в Python

PythonBeginner
Практиковаться сейчас

Введение

В этом лабораторном задании мы углубимся в мир пользовательских исключений в Python, используя сценарий фэнтезийного королевства. Королевство находится под угрозой от злого дракона, и вызывается смелый рыцарь-чародей, чтобы защитить королевство. Однако рыцарь сталкивается с различными проблемами во время этой миссии, что подчеркивает необходимость настройки обработки исключений в Python.

Создание пользовательского исключения

В этом шаге мы создадим пользовательский класс исключения для обработки конкретных сценариев, когда рыцарь-чародей сталкивается с препятствиями.

  1. Откройте файл с именем custom_exceptions.py в директории /home/labex/project.
## custom_exceptions.py

## Пользовательский класс исключения для обработки ошибок, связанных с драконом
class DragonError(Exception):
    def __init__(self, message):
        super().__init__(message + " - Будьте осторожны с драконом!")

После сохранения файла вы теперь будете иметь готовые пользовательские исключения для использования.

Использование пользовательского исключения

Теперь давайте посмотрим, как наш рыцарь-чародей может использовать пользовательское исключение для обработки встречи с драконом.

  1. Откройте файл с именем dragon_encounter.py в директории /home/labex/project.
## dragon_encounter.py

from custom_exceptions import DragonError

def brave_encounter():
    try:
        ## Симуляция встречи с драконом
        raise DragonError("Error in dragon's lair!")
    except DragonError as e:
        print(e)

brave_encounter()

Запустите скрипт:

python dragon_encounter.py

На вашем терминале должна быть отображена следующая информация:

Error in dragon's lair! - Будьте осторожны с драконом!

Резюме

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