Junior — Middle
Pode explicar o que é um decorador para métodos de classe em Python?
sobes.tech IA
Resposta da IA
Um decorador para métodos de classes em Python é uma função que aceita um método de classe e retorna uma versão modificada desse método. Ele permite adicionar comportamentos adicionais ao método sem alterar seu código fonte.
Por exemplo, pode-se usar um decorador para registrar chamadas de método, verificar permissões de acesso ou armazenar resultados em cache.
Exemplo de um decorador simples para um método de classe:
class MinhaClasse:
def decorador(func):
def wrapper(self, *args, **kwargs):
print(f"Chamada do método {func.__name__}")
return func(self, *args, **kwargs)
return wrapper
@decorador
def metodo(self, x):
return x * 2
obj = MinhaClasse()
print(obj.metodo(5)) # Mostrará uma mensagem e o resultado 10
Aqui, @decorador envolve o método metodo, adicionando uma saída adicional ao chamá-lo.