Anonymous functions
One last type of function that we want to talk about is anonymous functions. These functions, which are called lambdas in Python, are usually used when a fully-fledged function with its own name would be overkill, and all we want is a quick, simple one-liner.
Imagine that we wanted a list of all the numbers up to a certain value of N that are also multiples of five. We could use the filter()
function for this, which will require a function and an iterable as input. The return value is a filter object that, when iterated over, yields the elements from the input iterable for which the function returns True
. Without using an anonymous function, we might do something like this:
# filter.regular.py
def is_multiple_of_five(n):
return not n % 5
def get_multiples_of_five(n):
return list(filter(is_multiple_of_five, range(n)))
Note how we use is_multiple_of_five()
to filter through the first n natural numbers. This seems a bit excessive—the task...