Writing a simple function decorator
A decorator function is a function (or a callable object) that returns a new function. The simplest case involves a single argument: the function that is to be decorated. The result of a decorator is a function that has been wrapped. Essentially, the additional features are put either before or after the original functionality. These are the two readily available join points in a function.
When we define a decorator, we want to be sure that the decorated function has the original function's name and docstring. These attributes should be set by a decorator, which we will use to write the decorated functions. Using functools.wraps to write new decorators simplifies the work we need to do because this bit of bookkeeping ...
Become an O’Reilly member and get unlimited access to this title plus top books and audiobooks from O’Reilly and nearly 200 top publishers, thousands of courses curated by job role, 150+ live events each month,
and much more.
Read now
Unlock full access