Как запустить функцию заново, если выпадает исключение?
📁 функция, исключение, работа
Дана функция с исключением внутри. если исключение не выпадает, то функция работает дальше.
Как запустить функцию заново, если исключение выпадает?
В коде:
try_repeat– декоратор, который повторяет вызов функции, если та выкинула исключение.exception_func– функция, которая с вероятностью 50% выбросит исключение
Пример:
def try_repeat(func): def wrapper(*args, **kwargs): count = 10 while count: try: retu func(*args, **kwargs) except Exception as e: print('Error:', e) count -= 1 retu wrapper@try_repeatdef exception_func(): import random if random.randint(0, 1): raise Exception('!!!')exception_func() Войдите чтобы оставить ответ