Chapter 11. Decorator Design Techniques

Python offers us many ways to create higher-order functions. In Chapter 5, Higher-order Functions, we looked at two techniques: defining a function which accepts a function as an argument and defining a subclass of Callable which is either initialized with a function or called with a function as an argument.

In this chapter, we'll look at using a decorator to build a function based on another function. We'll also look at two functions from the functools module, the update_wrapper() and wraps() functions, that can help us build decorators.

One of the benefits of decorated functions is that we can create composite functions. These are single functions that embody functionality from several sources. A composite ...

Get Functional Python Programming now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.