ComeçarComece gratuitamente

Definição de um decorador

Seu amigo está trabalhando em um decorador que imprime uma mensagem "antes" antes de a função decorada ser chamada e imprime uma mensagem "depois" depois de a função decorada ser chamada. Eles estão tendo problemas para se lembrar de como a função de empacotamento decorado deve funcionar. Ajude-os terminando o decorador do site print_before_and_after().

Este exercício faz parte do curso

Como escrever funções em Python

Ver Curso

Instruções de exercício

  • Chame a função que está sendo decorada e passe a ela os argumentos posicionais *args.
  • Retorna a nova função decorada.

Exercício interativo prático

Experimente este exercício preenchendo este código de exemplo.

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)
Editar e executar código