map(func, iter, …) применяет func к каждому элементу iter

a = [1, 2, 3, 4]
b = [10, 20, 30]

# Функция map() принимает другую
# функцию и итерируемый объект,
# возвращает итератор, генерирующий
# измененные элементы итерируемого объекта.
# Элементы изменяются переданной функцией.
# Часто вместо обычной функции в map()
# передают lambda-выражение.
c = map(lambda x: x + 1, a)
print(list(c))

# Если в map() передается несколько iterable,
# из каждого будет извлекаться по одному элементу
# и передаваться заданной функции.
# Итератор заканчивает работу, когда заканчивается
# самый короткий iterable.
c = map(lambda x, y: x + y, a, b)
print(list(c))

def mult(n, m):
    return n * m

# пример передачи в map() обычной функции
for i in map(mult, a, b):
    print(i)
[2, 3, 4, 5]
[11, 22, 33]
10
40
90


Вы можете оставить комментарий, или Трекбэк с вашего сайта.

Оставить комментарий