Writing higher-order functions

We can identify three varieties of higher-order functions; they are as follows:

  • Functions that accept a function as one of its arguments.
  • Functions that return a function. A Callable class is a common example of this. A function that returns a generator expression can be thought of as a higher-order function.
  • Functions that accept and return a function. The functools.partial() function is a common example of this. We'll save this for Chapter 10, The Functools Module. A decorator is different; we'll save this for Chapter 11, Decorator Design Techinques.

We'll expand on these simple patterns using a higher-order function to also transform the structure of the data. We can do several common transformations such as the following: ...

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.