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

Definice dekorátoru

Tvůj kamarád pracuje na dekorátoru, který vypíše zprávu „before" před voláním dekorované funkce a zprávu „after" po jejím zavolání. Není si ale jistý, jak správně zabalit dekorovanou funkci. Pomoz mu dokončit dekorátor print_before_and_after().

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

Writing Functions in Python

Zobrazit kurz

Pokyny k cvičení

  • Zavolej dekorovanou funkci a předej jí poziční argumenty *args.
  • Vrať novou dekorovanou funkci.

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 print_before_and_after(func):
  def wrapper(*args):
    print('Before {}'.format(func.__name__))
    # Call the function being decorated with *args
    ____(*args)
    print('After {}'.format(func.__name__))
  # Return the nested function
  return ____

@print_before_and_after
def multiply(a, b):
  print(a * b)

multiply(5, 10)
Upravit a spustit kód