I would replace "excellent" with "extremely thorough."
I would recommend the posted link for a first introduction -- it's short, explains decorators as clearly but more approachably, and talks about their application to classes, something the SO answer misses.
Thanks for the link. As a python newbie, the way that helped me best was going through the stack overflow link and then the posted article.
From what I understand its also important to understand when the decorator function is executed. Before or after the function it decorates.(I understand its also possible, that it executes both before and after).
Is this understanding correct?
I would recommend the posted link for a first introduction -- it's short, explains decorators as clearly but more approachably, and talks about their application to classes, something the SO answer misses.