Функция map в Python
Функция map в Python является встроенной функцией, которая принимает два аргумента - функцию и итерируемый объект, и возвращает новый итератор, содержащий результаты применения данной функции к каждому элементу исходного объекта.
Синтаксис функции map выглядит следующим образом:
map(function, iterable)
Параметр function - это функция, которую нужно применить к каждому элементу исходного объекта. Она может быть как встроенной функцией Python (например, int, str), так и пользовательской функцией.
Параметр iterable - это итерируемый объект, например, список, кортеж или строка, который будет обрабатываться функцией. Количество элементов в итерируемом объекте должно быть равно количеству аргументов, принимаемых функцией.
Результатом вызова функции map является новый итератор, который содержит результаты применения функции к каждому элементу исходного объекта в том порядке, в котором они находились в итерируемом объекте.
Рассмотрим примеры кода, чтобы лучше понять работу функции map:
1. Применение встроенной функции int к каждому элементу списка, преобразуя их из строк в целые числа:
numbers = ['1', '2', '3', '4', '5']
result = map(int, numbers)
print(list(result))
Результат:
[1, 2, 3, 4, 5]
2. Применение пользовательской функции square к каждому элементу списка, возводя их в квадрат:
def square(x):
return x**2
numbers = [1, 2, 3, 4, 5]
result = map(square, numbers)
print(list(result))
Результат:
[1, 4, 9, 16, 25]
3. Применение встроенной функции len к каждому элементу списка, чтобы узнать их длину:
fruits = ['apple', 'banana', 'cherry']
result = map(len, fruits)
print(list(result))
Результат:
[5, 6, 6]
Во всех трех примерах функция map применяет заданную функцию (int, square, len) к каждому элементу итерируемого объекта (numbers, fruits), и возвращает новый итератор, содержащий результаты операций.