Sobes.tech
Junior — Senior
50

Ограничитель частоты вызова произвольной функции

Условие задачи

Создайте декоратор, который ограничивает частоту вызовов любой функции. Период ограничения (в секундах) передаётся в сам декоратор как аргумент. Если попытаться вызвать функцию до истечения указанного периода, должен быть сгенерирован исключительный тип CalledTooOftenError. Декоратор обязан корректно работать с функциями любой сигнатуры и сохранять их оригинальное объявление.

def foo():
    print('foo')