Menu
Coddy logo textTech

Practice #3

Lektion 10 von 12 im Kurs Python-Dekoratoren von Coddy.

challenge icon

Aufgabe

Mittel

Schreiben Sie einen Decorator namens rate_limit, der die Rate begrenzt, mit der eine Funktion ausgeführt werden kann.

Der Decorator sollte einen Parameter entgegennehmen, der die maximale Anzahl der Aufrufe der Funktion pro Sekunde angibt. Wenn die Funktion öfter als die maximale Anzahl pro Sekunde aufgerufen wird, sollte der Decorator eine Exception auslösen - Exception("Function called too quickly").

Tipp: Verwenden Sie die <strong>time</strong>-Bibliothek. Um die aktuelle Zeit zu erhalten, können Sie time.monotonic() verwenden.

Der Test für diese Herausforderung führt eine Funktion mit diesem Decorator alle 0.2 Sekunden aus, insgesamt 10 Mal.

Probier es selbst

import time

def rate_limit(max_calls):
    # Code hier schreiben

Alle Lektionen in Python-Dekoratoren

Übe selbstständig: Online-Python-Compiler