Python Academy · Урок

Создание собственных исключений

Научитесь определять собственные исключения для обработки конкретных ошибок

Урок 4 из 410 шагов

«Создание собственных исключений» — бесплатный урок Python Academy на CoddyKit. Это урок 4 из 4. Ты можешь прочитать весь урок бесплатно ниже — а потом практиковать его прямо в браузере с встроенным редактором кода и ИИ-репетитором 24/7. Это часть пути обучения Python Academy, и твой прогресс синхронизируется между веб-версией и приложением CoddyKit. Курс Python Academy содержит 4 уроков всего.

Введение в создание пользовательских исключений

Python позволяет определять собственные исключения, создавая пользовательские классы исключений. Это помогает эффективнее обрабатывать определённые ошибки.

В этом уроке Вы научитесь создавать, вызывать и использовать пользовательские исключения в программах на Python.

Создание собственных исключений — иллюстрация 1

Зачем создавать пользовательские исключения?

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

  • Обрабатывать определённые ошибки приложения.
  • Предоставлять содержательные сообщения об ошибках для отладки.
  • Эффективнее структурировать логику обработки ошибок.

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

Чтобы определить пользовательское исключение, создайте новый класс, наследующий класс Exception:

# Defining a custom exception
class MyCustomError(Exception):
    pass

# Raising the custom exception
raise MyCustomError("This is a custom error.")

Добавление пользовательских сообщений

Вы можете добавлять пользовательские сообщения в класс исключения, переопределив конструктор:

# Adding custom messages to a custom exception
class MyCustomError(Exception):
    def __init__(self, message):
        self.message = message
        super().__init__(message)

# Raising the exception with a custom message
raise MyCustomError("This is a specific error message.")

Использование пользовательских исключений в функциях

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

# Using custom exceptions in a function
class InvalidAgeError(Exception):
    pass

def check_age(age):
    if age < 0:
        raise InvalidAgeError("Age cannot be negative.")

try:
    check_age(-5)
except InvalidAgeError as e:
    print(e)

Рекомендации по пользовательским исключениям

Вот несколько рекомендаций по созданию и использованию пользовательских исключений:

  • Наследуйте встроенный класс Exception.
  • Предоставляйте понятные и конкретные сообщения об ошибках.
  • Используйте иерархии исключений для лучшей организации.

Обработка пользовательских исключений

Обрабатывайте пользовательские исключения так же, как встроенные, используя блоки try и except:

# Handling custom exceptions
class MyCustomError(Exception):
    pass

try:
    raise MyCustomError("An error occurred.")
except MyCustomError as e:
    print(f"Handled a custom error: {e}")

Распространённые ошибки при работе с пользовательскими исключениями

Вот несколько ошибок, которых следует избегать:

  • Создавать пользовательские исключения без необходимости, когда достаточно встроенных.
  • Не предоставлять информативные сообщения об ошибках.
  • Не использовать иерархии исключений в сложных приложениях.

Что мы узнали?

На этом уроке Вы узнали:

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

Отличная работа! Перейдём к следующей теме.

Создание собственных исключений — иллюстрация 10
Можно начать бесплатно

Изучай Python с ИИ-репетитором — бесплатно

Пиши и запускай код прямо в браузере, получай мгновенную помощь от ИИ-репетитора 24/7 и продолжи учиться на сайте или в приложении.

Курсы
76
Уроки
320

Часто задаваемые вопросы

Урок «Создание собственных исключений» бесплатный?

Да — полный текст урока «Создание собственных исключений» бесплатно доступен здесь в веб-версии. Чтобы практиковать его интерактивно (встроенный редактор кода и ИИ-репетитор 24/7) и разблокировать остальной курс Python Academy, подпишись на CoddyKit PRO. Курс Python Academy содержит 4 уроков всего.

Чему я научусь в уроке «Создание собственных исключений»?

Научитесь определять собственные исключения для обработки конкретных ошибок Ты практикуешь Python Academy с помощью реального кода, который запускаешь прямо в браузере, и ИИ-репетитор 24/7 отвечает на твои вопросы во время урока.

Нужен ли мне опыт, чтобы начать Python Academy?

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

Сколько времени занимает урок «Создание собственных исключений»?

Большинство уроков CoddyKit занимают около 5–10 минут. Каждый из них компактный и интерактивный, поэтому ты постоянно делаешь прогресс и продолжаешь с того же места в веб-версии и приложении.

Можно ли писать и запускать код в этом уроке Python Academy?

Да. Каждый урок Python Academy включает встроенный редактор кода, поэтому ты пишешь и запускаешь реальный код прямо в браузере и получаешь моментальную обратную связь от AI — локальная установка не требуется.

Все уроки этого курса

  1. Разбор ошибок
  2. Использование try, except и finally
  3. Вызов исключений
  4. Создание собственных исключений
← Назад к Python Academy