Začněte nyníZačněte zdarma

Counter

Pracuješ na nové webové aplikaci a zajímá tě, kolikrát se každá z jejích funkcí volá. Rozhodneš se proto napsat dekorátor, který ke každé dekorované funkci přidá čítač. Tuhle informaci pak můžeš v budoucnu využít k tomu, abys zjistil/a, které části kódu už aplikace nepoužívá a lze je odstranit.

Toto cvičení je součástí kurzu

Writing Functions in Python

Zobrazit kurz

Pokyny k cvičení

  • Zavolej dekorovanou funkci a vrať její výsledek.
  • Vrať novou dekorovanou funkci.
  • Dekoruj foo() pomocí dekorátoru counter().

Interaktivní cvičení na vyzkoušení si v praxi

Vyzkoušejte si toto cvičení dokončením tohoto ukázkového kódu.

def counter(func):
  def wrapper(*args, **kwargs):
    wrapper.count += 1
    # Call the function being decorated and return the result
    return ____
  # Set count to 0 to initialize call count for each new decorated function
  wrapper.count = 0
  # Return the new decorated function
  ____

# Decorate foo() with the counter() decorator
____
def foo():
  print('calling foo()')
  
foo()
foo()

print('foo() was called {} times.'.format(foo.count))
Upravit a spustit kód