a = [1, 2, 3]
b = [4, 5, 6]
result = list(map(lambda x, y: x + y, a, b))
print(result)
Код складывает элементы списков a
и b
поэлементно, используя функцию map
и анонимную функцию (lambda).
Результатом будет список [5, 7, 9]
.
Данный код на Python использует функцию map()
для сложения элементов двух списков, a
и b
, поэлементно.
Разберем код по шагам:
a = [1, 2, 3]
: Определяется список a
, содержащий числа 1, 2 и 3.b = [4, 5, 6]
: Определяется список b
, содержащий числа 4, 5 и 6.result = list(map(lambda x, y: x + y, a, b))
: Это ключевая строка. Она делает следующее:
map(lambda x, y: x + y, a, b)
: Функция map()
применяет анонимную функцию (лямбда-функцию) к каждому элементу из списков a
и b
.lambda x, y: x + y
: Это анонимная функция, которая принимает два аргумента (x
и y
) и возвращает их сумму.a, b
: map()
берет первый элемент из a
(1) и первый элемент из b
(4), передает их в лямбда-функцию. Затем второй элемент из a
(2) и второй элемент из b
(5), и так далее. Важно, чтобы списки были одной длины или map
остановится, как только закончится более короткий список.list(...)
: Функция map()
возвращает итератор. Чтобы получить список результатов, мы преобразуем итератор в список с помощью list()
.print(result)
: Выводит список result
в консоль.Результат выполнения кода:
Код выведет в консоль список [5, 7, 9]
, так как каждый элемент списка a
был сложен с соответствующим элементом списка b
: 1+4=5, 2+5=7, 3+6=9.
Альтернативные способы решения:
Вместо использования map
и лямбда-функции, можно использовать list comprehension для достижения того же результата, что может быть более читаемым:
a = [1, 2, 3]
b = [4, 5, 6]
result = [x + y for x, y in zip(a, b)]
print(result)
Здесь zip(a, b)
создает итератор, возвращающий кортежи из соответствующих элементов списков a
и b
, а list comprehension создает новый список, содержащий суммы этих элементов.