Automágica: durante 2017 estoy trabajando bastante en Automágica, mi software para editar libros: Más información - Posts relacionados

Charla: Entendiendo Decoradores en Python [actualizada]

La primer vez que di esta charla fue en el PyDay de Rafala en 2010. De las charlas que tengo en la gatera, es la que más me gusta de momento. Está bien armada y es muy útil para quienes empiezan con Python. Por eso cuando me invitaron a dar una charla en el PyDay de Córdoba, no dude en presentarla.

Dejo on line la versión actualizada (y sus fuentes) ya que los estuve buscando antes de dar la charla y me costó encontrarlos en mi computadora. Subiéndolas a Internet aumento su disponibilidad.

Esta charla también fue dada en PyCon Argentina 2010.



Video de la charla Entendiendo decoradores en Python

Orfi se tomó el trabajo de editar una filmación de mi charla en el PyDay de Rafaela con mis slides para armar este video. Muchas gracias!

entendiendo decoradores from Orfx Sch on Vimeo.

Al final, durante las preguntas, escribo algo de código Python en la terminal. Lo siguiente es una reproducción:

>>> def f(a, b):

...     print a, b

...

>>> f(1, 2)

1 2

>>> def f(*a, **kw):

...     print a

...     print kw

...

>>> f(1)

(1,)

{}

>>> f(1, parametro=2)

(1,)

{'parametro': 2}

>>> def f(p1, *a, **kw):

...     print kw['param']

...

>>> f()

Traceback (most recent call last):

  File "", line 1, in

TypeError: f() takes at least 1 argument (0 given)

>>> f(1, 2, 3, param=0)

0

>>> def deco(f):

...     def _deco(*a, **kw):

...             if kw.get('p'):

...                     return f(*a, **kw)

...             else:

...                     print "No ejecuto."

...     return _deco

...

>>> @deco

... def saludo(*a, **kw):

...     print "hola"

...

>>> saludo()

No ejecuto.

>>> saludo(p=0)

No ejecuto.

>>> saludo(p=1)

hola