April 2018
Intermediate to advanced
408 pages
10h 42m
English
We can achieve expressive, succinct programs using higher-order functions. These are functions that accept a function as an argument or return a function as a value. We can use higher-order functions as a way to create composite functions from simpler functions.
Consider the Python max() function. We can provide a function as an argument and modify how the max() function behaves.
Here's some data we might want to process:
>>> year_cheese = [(2000, 29.87), (2001, 30.12), (2002, 30.6), (2003, 30.66),(2004, 31.33), (2005, 32.62), (2006, 32.73), (2007, 33.5), (2008, 32.84), (2009, 33.02), (2010, 32.92)]
We can apply the max() function, as follows:
>>> max(year_cheese) (2010, 32.92)
The default behavior is to simply compare ...