Funkcija map Python () z PRIMERI

Kazalo:

Anonim

Python map () uporablja funkcijo za vse postavke iteratorja, podane kot vhod. Ponavljalec je na primer lahko seznam, nabor, niz, slovar, niz in vrne iterabilni objekt zemljevida. Python map () je vgrajena funkcija.

V tej vadnici boste izvedeli:

  • Sintaksa:
  • Kako deluje funkcija map ()?
  • Uporaba map () z vgrajenimi funkcijami Python
  • Uporaba map () z nizom kot iterator
  • Uporaba map () z listof Numbers
  • Uporaba zemljevida () z Tuple
  • Uporaba map () s slovarjem
  • Uporaba zemljevida () z Set
  • Uporaba map () s funkcijo Lambda
  • Uporaba več iteratorjev znotraj funkcije map ()

Sintaksa:

map(function, iterator1,iterator2… iteratorN)

Parametri

Tu sta dve pomembni

  • function: obvezna funkcija, ki jo je treba dodeliti preslikavi, ki bo uporabljena za vse postavke, ki so na voljo v iteratorju.
  • iterator: Obnovljivi obvezni objekt. Lahko je seznam, nabor itd. Več funkcij iteratorja lahko prenesete v funkcijo map ().

Vrnjena vrednost

Funkcija map () bo uporabila dano funkcijo za vse elemente znotraj iteratorja in vrnila iterabilni objekt zemljevida, tj. Korito, seznam itd.

Kako deluje funkcija map ()?

Funkcija map () ima dva vhoda kot funkcijo in iterable objekt. Funkcija, ki je dana map (), je normalna funkcija in se bo ponovila nad vsemi vrednostmi v podanem iterabilnem objektu.

Recimo, da imate seznam števil in želite poiskati kvadrat vsakega od števil.

Da dobimo izhod, potrebujemo funkcijo, ki bo vrnila kvadrat danega števila. Funkcija bo naslednja:

def square(n):return n*n

Seznam elementov, ki jih želimo najti v kvadratu, je naslednji:

my_list = [2,3,4,5,6,7,8,9]

Zdaj pa uporabimo vgrajeno funkcijo map () python, da dobimo kvadrat vsakega od elementov na my_list.

Končna koda je naslednja:

def square(n):return n*nmy_list = [2,3,4,5,6,7,8,9]updated_list = map(square, my_list)print(updated_list)print(list(updated_list))

Izhod:

[4, 9, 16, 25, 36, 49, 64, 81]

Izhod funkcije map (), kot je viden v izhodu, je objekt zemljevida, prikazan na zaslonu kot .

Za končni izhod boste morali ponoviti izhodne podatke iz zemljevida z uporabo zanke for ali z uporabo metode list (). V kodi sem uporabil list (), ki prikazuje vrednosti znotraj navedenega seznama.

Torej s pomočjo funkcije map () lahko dobimo kvadrat vsakega števila. Seznam, ki smo ga dali na zemljevid, je bil [2,3,4,5,6,7,8,9] in s pomočjo funkcije square () izhod iz map (), ki smo ga dobili, je [4, 9, 16, 25, 36, 49, 64, 81].

Zemljevid funkcij () uporabi funkcijski kvadrat () za vse elemente na seznamu. Na primer spremenljivka my_list in posodobi seznam s kvadratom vsake številke. Izhod je shranjen v spremenljivki updated_list.

Uporaba map () z vgrajenimi funkcijami Python

Funkcija map Python () je vgrajena funkcija in se lahko uporablja tudi z drugimi vgrajenimi funkcijami, ki so na voljo v Pythonu. V primeru bomo uporabili vgrajeno funkcijo Python round (), ki zaokroži podane vrednosti.

Primer:

Seznam, ki ga imam, je my_list = [2.6743,3.63526,4.2325,5.9687967,6.3265,7.6988,8.232,9.6907].

Potrebujem zaokrožene vrednosti za vsak element, ki je prisoten na seznamu. Kot funkcijo preslikave () bomo uporabili round ().

my_list = [2.6743,3.63526,4.2325,5.9687967,6.3265,7.6988,8.232,9.6907]updated_list = map(round, my_list)print(updated_list)print(list(updated_list))

Izhod:

[3, 4, 4, 6, 6, 8, 8, 10]

Funkcija round () se uporabi za vse postavke na seznamu in vrne seznam z vsemi vrednostmi, zaokroženimi, kot je prikazano v izhodu.

Uporaba map () z nizom kot iterator

Map () lahko uporabimo tudi na nizu. V Pythonu niz deluje kot matrika, zato ga lahko enostavno uporabimo znotraj zemljevida ().

V primeru imamo funkcijo myMapFunc (), ki skrbi za pretvorbo danega niza v velike črke. Funkcija myMapFunc () je dodeljena funkciji map (). Funkcija map bo poskrbela za pretvorbo niza, podanega v velike črke, tako da bo niz posredovala myMapFunc ().

def myMapFunc(s):return s.upper()my_str = "welcome to guru99 tutorials!"updated_list = map(myMapFunc, my_str)print(updated_list)for i in updated_list:print(i, end)

Izhod:

WELCOME TO GURU99 TUTORIALS!

Uporaba map () z listof Numbers

Če želite delati s seznamom v map (), vzemite seznam števil in vsako število na seznamu pomnožite z 10.

Seznam, ki ga bomo uporabili, je: [2,3,4,5,6,7,8,9]. Funkcija myMapFunc () skrbi za pomnožitev danega števila z 10. Funkcija je dana na zemljevid skupaj s seznamom.

Primer:

def myMapFunc(n):return n*10my_list = [2,3,4,5,6,7,8,9]updated_list = map(myMapFunc, my_list)print(updated_list)print(list(updated_list))

Izhod:

[20, 30, 40, 50, 60, 70, 80, 90]

Rezultat, ki ga vidimo, je, da je vsaka številka na seznamu

pomnoženo z 10.

Uporaba zemljevida () z Tuple

Tuple je objekt v Pythonu, ki ima predmete, ločene z vejicami in zaprte v okrogle oklepaje. V primeru bomo vzeli nabor z vrednostmi niza. Funkcija, ki jo bomo uporabili, bo pretvorjene vrednosti podala v velike črke.

Primer:

def myMapFunc(n):return n.upper()my_tuple = ('php','java','python','c++','c')updated_list = map(myMapFunc, my_tuple)print(updated_list)print(list(updated_list))

Izhod:

['PHP', 'JAVA', 'PYTHON', 'C++', 'C']

Rezultat, ki ga dobimo, je nabor nazaj z vsemi vrednostmi v njem, pretvorjenimi v velike črke.

Uporaba map () s slovarjem

Slovar v Pythonu je ustvarjen z uporabo kodrastih oklepajev ({}). Ker je slovar iterator, ga lahko uporabite v funkciji map (). Zdaj uporabimo slovar kot iterator znotraj funkcije map ().

Naslednji primer prikazuje delovanje iteratorja slovarja znotraj map ()

def myMapFunc(n):return n*10my_dict = {2,3,4,5,6,7,8,9}finalitems = map(myMapFunc, my_dict)print(finalitems)print(list(finalitems))

Izhod:

[20, 30, 40, 50, 60, 70, 80, 90]

Uporaba zemljevida () z Set

Set v Pythonu je neurejena zbirka predmetov v zavitih oklepajih (()). Ker je set () tudi iterator, ga lahko uporabite v funkciji map ().

Tu je delovni primer uporabe nabora kot iteratorja znotraj zemljevida ()

def myMapFunc(n):return n*10my_set = {2,3,4,5,6,7,8,9}finalitems = map(myMapFunc, my_set)print(finalitems)print(list(finalitems))

Izhod:

[20, 30, 40, 50, 60, 70, 80, 90]

Uporaba map () s funkcijo Lambda

V Pythonu se lambda izrazi uporabljajo za izdelavo anonimnih funkcij. Ključno besedo lambda boste morali uporabiti tako kot def definirate običajne funkcije.

Torej, v primeru bomo uporabili funkcijo lambda znotraj zemljevida (). Lambda funkcija bo vsako vrednost na seznamu pomnožila z 10.

Primer:

my_list = [2,3,4,5,6,7,8,9]updated_list = map(lambda x: x * 10, my_list)print(updated_list)print(list(updated_list))

Izhod:

[20, 30, 40, 50, 60, 70, 80, 90]

Uporaba več iteratorjev znotraj funkcije map ()

Primer 1: posredovanje dveh iteratorjev seznama v map ()

V funkcijo map () lahko hkrati pošljete več iteratorjev, npr. Seznam, nabor itd.

Na primer, če želite dodati dva seznama. Enako lahko storimo s funkcijo map (). Uporabili bomo dva seznama my_list1 in my_list2.

V spodnjem primeru je prvi element na seznamu my_list1 dodan prvemu elementu na seznamu my_list2. Funkcija myMapFunc () sprejme elemente my_list1 in my_list2 in vrne vsoto obeh.

Tu je delovni primer dodajanja dveh podanih seznamov s pomočjo funkcije map ().

def myMapFunc(list1, list2):return list1+list2my_list1 = [2,3,4,5,6,7,8,9]my_list2 = [4,8,12,16,20,24,28]updated_list = map(myMapFunc, my_list1,my_list2)print(updated_list)print(list(updated_list))

Izhod:

[6, 11, 16, 21, 26, 31, 36]

Primer 2: Posredovanje enega Tupleja in iteratorja seznama na preslikavo ()

Uporabili bomo seznam in iterator nabora v funkciji map (). Funkcija je dana mapi - myMapFunc () bo dobil elemente s seznama in Tuple. Elementi bodo združeni s podčrtajem (_). Delovni primer je prikazan spodaj:

def myMapFunc(list1, tuple1):return list1+"_"+tuple1my_list = ['a','b', 'b', 'd', 'e']my_tuple = ('PHP','Java','Python','C++','C')updated_list = map(myMapFunc, my_list,my_tuple)print(updated_list)print(list(updated_list))

Izhod:

['a_PHP', 'b_Java', 'b_Python', 'd_C++', 'e_C']

Povzetek

  • Python map () je vgrajena funkcija, ki uporablja funkcijo za vse postavke iteratorja, podane kot vhod. Ponavljalec je na primer lahko seznam, nabor, niz itd. In vrne iterabilni objekt zemljevida.
  • Funkcija map () bo uporabila dano funkcijo za vse elemente znotraj iteratorja in vrnila iterabilni objekt zemljevida, tj. Korito, seznam itd.
  • Funkcija map Python () je vgrajena funkcija in se lahko uporablja tudi z drugimi vgrajenimi funkcijami, ki so na voljo v Pythonu.
  • Tuple je objekt v Pythonu, ki ima predmete, ločene z vejicami in zaprte v okrogle oklepaje. V primeru bo vzet set z vrednostmi niza. Funkcija, ki jo bomo uporabili, bo pretvorjene vrednosti podala v velike črke.
  • Slovar v Pythonu je ustvarjen z uporabo kodrastih oklepajev ({}). Ker je slovar iterator, ga lahko uporabite v funkciji map ().
  • Set v Pythonu je neurejena zbirka predmetov v zavitih oklepajih (()). Ker je set () tudi iterator, ga lahko uporabite v funkciji map ().
  • V Pythonu se lambda izrazi (ali lambda oblike) uporabljajo za izdelavo anonimnih funkcij. Ključna beseda lambda mora biti uporabljena, kadar želite uporabiti lambdo znotraj zemljevida ().
  • Funkciji map () lahko pošljete več iteratorjev, tj. Seznam, cev.