a = [1, 2, 3, 4]
result = list(map(lambda x: x * 2, a))
print(result)
Этот код использует функцию map
для применения анонимной функции (lambda) к каждому элементу списка a
.
Lambda функция lambda x: x * 2
умножает каждый элемент на 2.
Результат преобразования, возвращаемый функцией map
, преобразуется в список с помощью list()
.
В итоге, переменная result
будет содержать список [2, 4, 6, 8]
, который и будет выведен на экран.
Этот код демонстрирует использование функции map()
вместе с лямбда-функцией для преобразования списка чисел.
Разберем код построчно:
a = [1, 2, 3, 4]
: Создается список a
, содержащий целые числа 1, 2, 3 и 4.
result = list(map(lambda x: x * 2, a))
: Это ключевая строка.
map(lambda x: x * 2, a)
: Функция map()
применяет функцию (в данном случае, лямбда-функцию) к каждому элементу списка a
.lambda x: x * 2
: Это анонимная (лямбда) функция, которая принимает аргумент x
и возвращает его удвоенное значение (x * 2
).map()
применяет эту лямбда-функцию к каждому элементу списка a
. Это создает итератор, содержащий результаты умножения каждого элемента на 2.list(...)
: Функция list()
преобразует итератор, возвращенный map()
, в новый список.print(result)
: Выводит список result
на консоль.
Ожидаемый результат:
После выполнения этого кода на консоль будет выведено следующее:
[2, 4, 6, 8]
Альтернативный способ (List Comprehension):
Эту же задачу можно решить с помощью list comprehension, что часто считается более читаемым:
a = [1, 2, 3, 4]
result = [x * 2 for x in a]
print(result)
Этот код выдаст тот же результат: [2, 4, 6, 8]
.
Вывод:
Код использует map()
и лямбда-функцию для умножения каждого элемента списка на 2 и создает новый список с удвоенными значениями.