исключение.
я хочу сделать так, чтобы функция никогда не выбрасывала исключение. тем не менее, мне нужно знать, были ли в работе ошибки.
для этого я пишу для функции обертку (пусть будет декоратор), которая запускает эту функцию, и возвращает ее результат ИЛИ исключение, которое она выбросила
возвращаемый тип обертки - новый класс типа такого
@dataclass
class MyResult:
result: Any
exception: Optional[Exception]
если функция выполнилась корректно - возвращается MyResult(result_object, None)
если выбросила исключение - возвращается MyResult(None, exception_object)
есть идеи как красиво назвать класс MyResult?
а если функция бросает несколько исключений? )) зачем вообще такое делать, почему бы не перхватывать исключения там, где ты вызываешь функцию?
Обсуждают сегодня