Using max() and min() to find extrema
The max()
and min()
functions each have a dual life. They are simple functions that apply to collections. They are also higher-order functions. We can see their default behavior as follows:
>>> max(1, 2, 3)
3
>>> max((1,2,3,4))
4
Both functions will accept an indefinite number of arguments. The functions are designed to also accept a sequence or an iterable as the only argument and locate max
(or min
) of that iterable.
They also do something more sophisticated. Let's say we have our trip data from the examples in Chapter 4, Working with Collections. We have a function that will generate a sequence of tuples that looks as follows:
( ((37.54901619777347, -76.33029518659048), (37.840832, -76.273834), 17.7246), ((37.840832, -76.273834), (38.331501, -76.459503), 30.7382), ((38.331501, -76.459503), (38.845501, -76.537331), 31.0756), ((36.843334, -76.298668), (37.549, -76.331169), 42.3962), ((37.549, -76.331169), (38.330166, -76.458504...