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

Зачем создавать пользовательские исключения?
Пользовательские исключения позволяют:
- Обрабатывать определённые ошибки приложения.
- Предоставлять содержательные сообщения об ошибках для отладки.
- Эффективнее структурировать логику обработки ошибок.
Определение пользовательского исключения
Чтобы определить пользовательское исключение, создайте новый класс, наследующий класс 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. - Как использовать пользовательские исключения в функциях и эффективно их обрабатывать.
- О рекомендациях по созданию и организации пользовательских исключений.
Отличная работа! Перейдём к следующей теме.

Изучай 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 — локальная установка не требуется.
Все уроки этого курса
- Разбор ошибок
- Использование try, except и finally
- Вызов исключений
- Создание собственных исключений