Menu
Coddy logo textTech

Ćwiczenie nr 3

Lekcja 10 z 12 w kursie Dekoratory w Pythonie w Coddy.

challenge icon

Wyzwanie

Średni

Napisz dekorator o nazwie rate_limit, który ogranicza częstotliwość wykonywania funkcji.

Dekorator powinien przyjmować parametr określający maksymalną liczbę wywołań funkcji na sekundę. Jeśli funkcja zostanie wywołana więcej razy na sekundę, niż wynosi ten limit, dekorator powinien zgłosić wyjątek — Exception("Function called too quickly").

Wskazówka: użyj biblioteki <strong>time</strong>. Aby pobrać bieżący czas, możesz użyć time.monotonic().

Test tego wyzwania wywołuje funkcję z tym dekoratorem co 0.2 sekundy, łącznie 10 razy.

Spróbuj swoich sił

import time

def rate_limit(max_calls):
    # Wpisz kod tutaj

Wszystkie lekcje w sekcji Dekoratory w Pythonie

Poćwicz samodzielnie: Kompilator Python online