Объект карты Python является итератором, поэтому мы можем перебирать его элементы. Функция map () — это функция высшего порядка, принимающая функцию и переменное количество итераций в качестве аргументов. Функция map (), передаваемая на карту, будет применяться по столбцам к итерациям.
Функция карты Python
Python map () — это встроенная функция, которая используется для применения функции ко всем элементам указанных итерируемых и возвращаемых объектов карты. Функция map () применяет данную функцию к каждому элементу итерации, например списку, кортежу и т. Д., И возвращает результат в виде списка.
Python заимствует концепцию карты из функционала область программирования. Операция карты принимает функцию сопоставления и вектор данных в качестве аргументов и возвращает новый вектор, который является результатом применения функции сопоставления к каждому элементу вектора независимо.
Синтаксис
Синтаксис map () следующий.
map (function, iterable, ...)
Параметры
function — метод map () передает в эту функцию каждый элемент iterable .
iterable — итерируемый объект, который должен отображаться как список, кортеж, словарь или набор.
Функция Python map () применяет данную функцию к каждому элементу итерации и возвращает список результатов.
Возвращаемое значение
Возвращаемое значение из map () (объект карты) затем может быть передано в такие функции, как list () (для создания списка), set () (для создания набора) и т. д.
Как работает функция map () в Python
Хорошо, давайте рассмотрим следующий пример.
# app.pydef calculateCube (n): return n * n * nnumbers = (11, 21, 19, 46) output = map (calculateCube, numbers) print (output) # преобразование объекта карты в setnumbersCube = set (output) print (numbersCube)
Просмотреть вывод.
➜ pyt python3 app.py {97336, 1331, 9261, 6859} ➜ pyt
В В приведенном выше примере каждый элемент кортежа строится в кубе.
Поскольку map () ожидает, что функция будет передана, лямбда-функции обычно используются при работе с функциями map ().
См. второй следующий пример.
# app.pychars = ['s', 'k', 'k', 'a', 'v'] def change_upper_case (s) : return str (s) .upper () map_iterator = map (change_upper_case, chars) output_list = list (map_iterator) print (output_list)
В приведенном выше коде мы определили один список и определили функция, которая возвращает строку в верхнем регистре.
Затем вызовите функцию карты и предоставьте два аргумента. 1) change_upper_case и 2)
Результатом функции map является итератор, а затем мы преобразовали это итератор для перечисления и печати этого списка.
Итак, функция карты сопоставила все символы нижнего регистра с символами верхнего регистра. В отличие от функции фильтра, она не удаляет никаких значений из существующего списка.
См. Вывод ниже.
Мы можем использовать Функция Python map () с функцией Python Lambda.
Мы можем сократить приведенный выше код до трех строк кода с помощью лямбда-функции.
Мы можем использовать лямбда-функции с методом map () если мы не хотим использовать его повторно. Это полезно, когда наша функция мала, и мы не хотим определять новую функцию.
Давайте посмотрим на следующий пример.
# app.pychars = ['s', 'k', 'k', 'a', 'v'] преобразовано = list (map (lambda s: str (s) .upper (), chars)) print (преобразовано)
Как преобразовать карту Python в кортеж и set
Мы можем преобразовать итератор функции карты в кортеж и установить. См. Следующий пример.
# app.pynames = ['krunal', 'ankit', 'rushabh', 'dhaval', 'nehal'] convertTuple = tuple (map (lambda s: str (s) .upper (), names)) print (convertTuple)
См. вывод ниже.
Мы преобразовали список в кортеж. Давайте преобразуем список в набор с помощью карты и лямбда-функции.
# app.pystrings = ['krunal', 'ankit', 'rushabh', 'dhaval', 'nehal'] convertSet = set (map (lambda s: str (s) .upper (), strings)) print (convertSet)
См. вывод ниже.
Функция Python map () с несколькими аргументами
Взгляните на пример использования функции map () с несколькими повторяемыми аргументами.
# app.pylist_numbers = [19, 18, 29, 46] tuple_numbers = (21, 21, 21, 21) map_iterator = map (lambda x, y: x * y, list_numbers, tuple_numbers) print (list (map_iterator))
Мы определили один список и итератор и передали его карте функция, и она вернет умножение этого списка и кортежа и вернет итератор, и мы преобразовали этот итератор в список.
См. результат.
Как просмотреть список строк индивидуально в Python
Давайте рассмотрим список строк индивидуально в Python.
#app. pylistA = ['Millie', 'Finn', 'Noah', 'Gaten'] print ("Исходный список:" + str (listA)) listifyData = list (map (list, listA)) print (listifyData)
См. вывод.
➜ pyt python3 app.py Исходный список: ['Millie', 'Finn', 'Noah', 'Gaten'] [[ 'M', 'i', 'l', 'l', 'i', 'e'], ['F', 'i', 'n', 'n'], ['N', 'o ',' a ',' h '], [' G ',' a ',' t ',' e ',' n ']] ➜ pyt
Наконец, карта Python ( ) пример функции завершен.
Рекомендуемые сообщения
Python добавить в список
Python iter ()
Python string ()
Python filter ()
Пример Python pandas