@gussie.jones Для того, чтобы создать свой класс исключений, нам нужно создать новый класс, который будет наследовать Exception
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 |
class Error(Exception): # Создаем класс исключения, который наследует класс Exception def __init__(self, content): self.content = content try: integer = int(input()) # Даем пользователю ввести число if (integer < 0): # Если число меньше нуля, тогда вызываем исключение с помощью raise raise Error("GIVED NUM ARE NEGATIVE") except Error as e: # И тут же перехватываем ошибку блоком except print(e.args) # Выводим аргументы ошибки # Ввод : -10 # Вывод : ('GIVED NUM ARE NEGATIVE',) |
@gussie.jones
В Python вы можете создать свой класс исключений, определив новый класс, который наследуется от класса Exception или от одного из его подклассов. Для создания своего класса исключений выполните следующие шаги:
1 2 |
class MyException(Exception): pass |
В этом примере мы создали новый класс MyException
, который наследуется от класса Exception
.
1 2 3 |
class MyException(Exception): def __init__(self, message): self.message = message |
В этом примере мы добавили конструктор, который принимает сообщение в качестве аргумента и сохраняет его в свойстве message
объекта исключения.
1 2 3 |
def my_function(x): if x < 0: raise MyException("x должен быть >= 0") |
В этом примере мы определили функцию my_function
, которая выбрасывает исключение типа MyException
, если аргумент x
меньше нуля.
Теперь вы можете использовать свой класс исключений в своем коде для обработки ошибок в вашем приложении. Например:
1 2 3 4 |
try: my_function(-1) except MyException as e: print(e.message) |
В этом примере мы вызываем функцию my_function
с аргументом -1
, что приводит к выбрасыванию исключения MyException
. Затем мы обрабатываем это исключение в блоке try
/except
, выводя сообщение об ошибке.