Войти Создать аккаунт

Декораторы · 12 из 14

Не чаще, чем

Сводку по отделению начальница обновляет кнопкой, а считается сводка по всей базе. Нажимают кнопку раз по двадцать подряд, и база ложится. Решили так: чаще раза в минуту не пересчитывать, а показывать прошлый ответ.

Что сделать

Пересчитывайте сводку не чаще раза в минуту, сколько бы раз ни нажимали кнопку.

Что приходит

  • chasy — функция без аргументов: текущее время в секундах

  • pauza — сколько секунд должно пройти между пересчётами

Что вернуть

Декоратор; обёртка зовёт функцию, если с прошлого настоящего вызова прошло не меньше pauza, иначе отдаёт прошлый ответ и увеличивает propushcheno.

Допишите функцию ne_chashche в редакторе справа. Результат верните через return — то, что напечатано, на проверку не влияет.

Пример

Пауза — 60 секунд. В момент 0 сводка посчитана, в момент 30 отдана прошлая — пропуск, в момент 61 посчитана заново. Настоящих вызовов два — [0, 61], пропущен один.

Ctrl+Enter — проверить

Обсуждение

Вопросов пока нет.

Войдите, чтобы спросить.