21.12.2022 Views

python_para_desenvolvedores_2ed

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

Decoradores 107

Decoradores

Decoradores (decorators) são funções que são aplicadas em outras funções e

retornam funções modificadas. Decoradores tanto podem ser usados para

criar ou alterar características das funções (que são objetos) quanto para

“envolver” as funções, acrescentando uma camada em torno delas com novas

funcionalidades.

Função

Original

def func(arg):

return arg

Decorador

def decorator(f):

f.decorated = True

return f

func = decorator(func)

Função

Modificada

O decorador foi aplicado.

A partir do Python 2.4, o caractere “@” pode ser usado para automatizar o

processo de aplicação do decorador:

def decorator(f):

f.decorated = True

return f

@decorator

def func(arg):

return arg

Com isso, foi criado um atributo novo na função, que pode ser usado depois,

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!