Автор оригинала: Chris.
карта ()
Функция преобразует одну или несколько ейтов в новую, применяя «Функция трансформатора» к I-ю элементам каждой илетности. Аргументы – это Функция трансформатора объекта и один или несколько версий Отказ Если вы пройдете N по темпам В качестве аргументов функция трансформатора должна быть N Функция Принимая N входные аргументы. Возвращаемая стоимость представляет собой объект ITERABLE MAP из преобразованного и, возможно, агрегированных элементов.
Синтаксис карта ()
карта ()
Объект имеет следующий синтаксис:
Syntax: map(func, *iterables) --> map object
Аргументы | Функция | Функциональный объект, который применяется ко всем элементам в аргументе Iterable. |
Аргументы | показывать | Один или несколько версий. – > Если это один потенциал, функция Func применяется к каждому элементу. – > Если это несколько повторных в систему, функция FUNC получает несколько входов, по одному на i-й элемент каждого рейса. |
Возвращаемое значение | объект карты | Возвращает объект MAP, который является итератором, который сохраняет все сопоставленные элементы, чтобы вы могли перейти на них. Особенно для больших ейтена, это более эффективно, чем стандартный список Python. |
Обратная стоимость карты ()
карта ()
Функция Возвращает объект карты, который является итератором, который сохраняет все сопоставленные элементы, чтобы вы могли повторить их. Особенно для больших ейтена, это более эффективно, чем стандартный список Python.
>>> m = map(lambda x: 42, [1, 2, 3]) >>> type(m)
Простой пример unary map
Рассмотрим следующий простой пример:
lst = [1, 2, 3] f = lambda x: x + 1 print(map(f, lst)) # [2, 3, 4]
Мы создаем список lst
с тремя элементами. Кроме того, мы создаем функцию F
Это требует одного аргумента (целое число в нашем случае) и увеличивает его одним. Функция карты просто применяет функцию F
каждому элементу в списке.
Усовершенствованный пример N-ARY Map
В следующем примере демонстрируется, как вы можете использовать карта ()
Функция, чтобы добавить вместе два списка элемент-мудрый:
>>> l1 = [1, 2, 3] >>> l2 = [-1, -2, -3] >>> add = lambda x, y: x+y >>> list(map(add, l1, l2)) [0, 0, 0]
Обратите внимание, что мы должны преобразовать полученную карта
Объект в список, используя Список ()
конструктор.
Видео – Овладение функцией карты Python
С Python карта ()
Функция, вы можете применить определенную функцию для каждого элемента итеративного.
Требуется два аргумента:
- Функция : Часто это лямбда Функция Что вы можете определить на лету. Это функция, которую вы собираетесь подать заявку на каждый элемент …
- ИТЕРИТЕЛЬНО : Это то, что вы превращаете в новую, где каждый элемент является результатом приложенной функции.
Результатом является карта
объект.
Что такое объект карты Python?
Это просто итератор, который спасает все сопоставленные элементы, чтобы вы могли пережить их. Особенно для больших повторных планов это гораздо более эффективно, чем стандартный список Python.
Практическая пример головоломки для тестирования Что вы узнали
def encrypt(s1): s2 = map(lambda c : chr(ord(c) + 2), s1) return ''.join(s2) def decrypt(s1): s2 = map(lambda c : chr(ord(c) - 2), s1) return ''.join(s2) s = "xtherussiansarecomingx" print(decrypt(encrypt(encrypt(s)))==encrypt(s))
Упражнение : Можете ли вы выяснить вывод этой головоломки?
Нажмите на изображение, чтобы решить его в нашем приложении интерактивной головоломки:
Вы уже знаете, что компьютеры работают только на 0S и 1S. Каждый символ в строке кодируется как последовательность 0s и 1s. Unicode – это такое кодирование, которое отображает кучу нулей и единиц (двоичное порядковое значение) на символ, который вы можете прочитать (символ). Таблица Unicode присваивает одно двоичное или десятичное значение каждому символу. Например, значение 41 Unicode кодирует значение «A» и значение 42 Unicode значение «B».
С Unicode мы создаем наш собственный секретный язык через функции шифрования и дешифрования. Функции шифрования и дешифры работают на строке литерала S1. Чтобы зашифровать или расшифровать строку, мы переключаем каждый символ двумя положениями Unicode. Функция шифрования сдвигает строку справа, функция расшифровки сдвигает ее слева.
Мы используем функцию карты для реализации этой смены для каждого символа в строке S1. Использование встроенного функции Орд ()
Сдвиг персонажа так же просто, как добавление значения смещения в значение Unicode соответствующего символа.
Результат как шифрования, так и дешифровки представляет собой последовательность. Следовательно, мы присоединяемся к последовательности с пустой строкой в качестве сепаратора для получения окончательной зашифрованной или расшифрованной строки.
Призывая функцию шифровать ()
Дважды, строка просто смещена позициями в таблице Unicode. Следовательно, результат двойного шифрования плюс однократное дешифрование совпадает с одной дешифрованием, то есть.
Поэтому результат «правда».
Резюме
карта ()
Функция преобразует одну или несколько ейтена в новый, применяя «Функция трансформатора» к I-го элементам каждого повторного.
Аргументы – это Функция трансформатора объекта и один или несколько версий Отказ
Если вы пройдете N по темпам В качестве аргументов функция трансформатора должна быть N Функция Принимая N входные аргументы.
Возвращаемая стоимость представляет собой объект ITERABLE MAP из преобразованного и, возможно, агрегированных элементов.
Работая в качестве исследователя в распределенных системах, доктор Кристиан Майер нашел свою любовь к учению студентов компьютерных наук.
Чтобы помочь студентам достичь более высоких уровней успеха Python, он основал сайт программирования образования Finxter.com Отказ Он автор популярной книги программирования Python одноклассники (Nostarch 2020), Coauthor of Кофе-брейк Python Серия самооставленных книг, энтузиаста компьютерных наук, Фрилансера и владелец одного из лучших 10 крупнейших Питон блоги по всему миру.
Его страсти пишут, чтение и кодирование. Но его величайшая страсть состоит в том, чтобы служить стремлению кодер через Finxter и помогать им повысить свои навыки. Вы можете присоединиться к его бесплатной академии электронной почты здесь.
Оригинал: “https://blog.finxter.com/python-map/”