Python е силен и гъвкав език за програмиране, който предлага различни вградени функции за извършване на операции с данни. Една такава функция е функцията map(), която се използва за прилагане на функция към всеки елемент от итерируем (като списък или кортеж) и връща нов итерируем с резултатите.
Функцията map() приема два аргумента: функция и итерируем. Състезанието за функцията е функцията, която ще бъде приложена към всеки елемент от итерируемото, а итерируемото съревнование е итерируемото, към което ще бъде приложена функцията. Ето синтаксиса на функцията map():
Синтаксис:
map(function, iterables)
Параметри
функция - Това е функция, при която карта преминава през всеки елемент от итерируемото.
итерируеми - Това е последователност, колекция или обект на итератор, който трябва да бъде картографиран.
потребителско име
Връщане
Той връща списък с резултати след прилагане на дадена функция към всеки елемент от итерируем (списък, кортеж и т.н.)
В тази статия ще проучим функцията map() в Python и ще дадем няколко примера за това как тя обикновено се използва.
Примери за функция на Python map().
Пример 1: Използване на map() за повдигане на квадрат на списък от числа
Едно нормално използване на функцията map() е да се приложи числова дейност към всеки елемент от списък. Ето пример за използване на функцията map() за квадрат на списък от числа:
Код:
# Python example program for map() function numbers = [1, 2, 3, 4, 5] # lambda function defines the squaring operation squared_numbers = list( map( lambda x : x**2, numbers )) # print the list of squared numbers print(squared_numbers)
Изход:
научете селен
[1, 4, 9, 16, 25]
В този пример имаме списък с числа и трябва да повдигнем на квадрат всяко едно от тях. Ние използваме функцията ламбда, за да характеризираме дейността по измисляне и след това предаваме тази функция и списъка с числа на функцията map(). Функцията map() прилага функцията ламбда към всеки елемент от списъка и връща нова итерируема с квадратни числа.
Пример 2: Използване на map() за преобразуване на температури от Целзий във Фаренхайт
Още едно използване на функцията map() е да се приложи рецепта за промяна към всеки елемент от итерируем. Ето пример за използване на функцията map() за преобразуване на температури от Целзий във Фаренхайт:
Код:
# Python example program for map() function temperatures = [0, 10, 20, 30, 40] # lambda function defines the conversion formula fahrenheit_temperatures = list(map( lambda x : (9/5)*x + 32, temperatures )) # print the list of Fahrenheit temperatures print(fahrenheit_temperatures)
Изход:
inkscape срещу gimp
[32.0, 50.0, 68.0, 86.0, 104.0]
В този пример имаме списък с температури в Целзий и трябва да ги конвертираме във Фаренхайт. Ние използваме функцията ламбда, за да характеризираме рецептата за промяна, и след това предаваме тази функция и списъка с температури на функцията map(). Функцията map() прилага ламбда функцията към всеки елемент от списъка и връща нова итерируема с преобразуваните температури.
Пример 3: Използване на map() за свързване на низове
Функцията map() също може да се използва за прилагане на низова дейност към всеки елемент от итерируем. Ето пример за използване на функцията map() за свързване на низове:
Код:
# Python example program for map() function words = ['hello', 'world', 'python', 'map'] # lambda function defines the string operation concatenated_words = list(map(lambda x : x.capitalize( ) + '!', words)) # print the list of concatenated words print(concatenated_words)
Изход:
['Hello!', 'World!', 'Python!', 'Map!']
В този пример имаме списък с думи и трябва да подпишем всяка дума и да добавим отпечатък на междуметие, доколкото е възможно. Ние използваме функцията lambda, за да характеризираме дейността на низа и след това предаваме тази функция и списъка с думи на функцията map(). Функцията map() прилага ламбда функцията към всеки елемент от списъка и връща нова итерируема с конкатенираните низове.
Заключение:
Функцията map() е невероятен актив в Python, който може да се използва за прилагане на функция към всеки елемент на итерируем елемент и връщане на нов итерируем елемент с резултатите. Гъвкава функция може да се използва с числени операции, рецепти за трансформация, операции с низове, оттам нататък небето е границата.