Python provides 3 useful global functions we can use to work with collections: map(), filter() and reduce().
Tip: sometimes list comprehensions make more sense and are generally considered more pythonic
map() is used to run a function upon each item in an iterable item like a list, and create a new list with the same number of items, but the values of each item can be changed.
Example of map() being used to double each item in a list:
numbers = [1, 2, 3]
def double(a):
return a * 2
result = map(double, numbers)
When the function is a one-liner, it’s common to use a lambda function:
numbers = [1, 2, 3]
double = lambda a : a * 2
result = map(double, numbers)
and even inline it:
numbers = [1, 2, 3]
result = map(lambda a : a * 2, numbers)
The original list is left untouched, and a new list with the updated values is returned by map().
The result is a map object, an iterable, and you will need to cast it to a list to print its content:
print(list(result)) # [2, 4, 6]
Lessons in this unit:
| 0: | Introduction |
| 1: | Exceptions |
| 2: | Debugging |
| 3: | Enums |
| 4: | ▶︎ map() |
| 5: | filter() |
| 6: | reduce() |
| 7: | Regular Expressions |