Menu
Coddy logo textTech

Practice #3

Lição 10 de 12 do curso Decoradores em Python da Coddy.

challenge icon

Desafio

Médio

Escreva um decorador chamado rate_limit que limite a taxa na qual uma função pode ser executada.

O decorador deve receber um parâmetro indicando o número máximo de vezes que a função pode ser chamada por segundo. Se a função for chamada mais do que o número máximo de vezes por segundo, o decorador deve lançar uma exceção - Exception("Function called too quickly").

Dica: use a biblioteca <strong>time</strong>, para obter o tempo atual você pode usar time.monotonic()

O teste para este desafio executa uma função com este decorador, a cada 0.2 segundo, 10 vezes no total.

Experimente você mesmo

import time

def rate_limit(max_calls):
    # Escreva o código aqui

Todas as lições de Decoradores em Python

Pratique por conta própria: Compilador de Python online