Python map() funksjon med EKSEMPLER

Python map() bruker en funksjon pรฅ alle elementene i en iterator gitt som input. En iterator, for eksempel, kan vรฆre en liste, en tuppel, et sett, en ordbok, en streng, og den returnerer et itererbart kartobjekt. Python map() er en innebygd funksjon.

syntax

map(function, iterator1,iterator2 ...iteratorN)

Parametre

Her er to viktige

  • funksjon: En obligatorisk funksjon som skal gis til kart, som vil bli brukt pรฅ alle elementene som er tilgjengelige i iteratoren.
  • iterator: Et gjentakelig obligatorisk objekt. Det kan vรฆre en liste, en tuppel, osv. Du kan sende flere iteratorobjekter til map()-funksjonen.

Returverdi

Map()-funksjonen kommer til รฅ bruke den gitte funksjonen pรฅ alle elementene inne i iteratoren og returnere et iterbart kartobjekt, dvs. en tuppel, en liste, etc.

Hvordan fungerer map()-funksjonen?

Map()-funksjonen tar to innganger som en funksjon og et iterbart objekt. Funksjonen som er gitt til map() er en normal funksjon, og den vil iterere over alle verdiene som er tilstede i det gjentatte gjentakbare objektet.

Tenk for eksempel at du har en liste med tall, og du vil finne kvadratet til hvert av tallene.

For รฅ fรฅ utdata, trenger vi funksjonen som vil returnere kvadratet av det gitte tallet. Funksjonen vil vรฆre som fรธlger:

def square(n):
	return n*n

Listen over elementer som vi รธnsker รฅ finne firkanten er som fรธlger:

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

La oss nรฅ bruke map() python innebygd funksjon for รฅ fรฅ kvadratet av hvert av elementene i my_list.

Den endelige koden er som fรธlger:

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

Utgang:

<map object at 0x0000002C59601748>
[4, 9, 16, 25, 36, 49, 64, 81]

Utdata fra map()-funksjonen, som vist i utdata, er et kartobjekt som vises pรฅ skjermen som .

Du mรฅ iterere utdataene fra kartet ved รฅ bruke en for-loop eller bruke list()-metoden for รฅ fรฅ den endelige utgangen. Jeg har brukt list() i koden som viser verdiene i listen som er gitt.

Sรฅ ved รฅ bruke map()-funksjonen kan vi fรฅ kvadratet til hvert tall. Listen som ble gitt til kartet var [2,3,4,5,6,7,8,9] og ved รฅ bruke funksjonen square() utdataene fra map() vi fikk er [4, 9, 16, 25, 36, 49, 64, 81] .

Funksjonskartet() bruker funksjonen square() pรฅ alle elementene pรฅ listen. For eksempel, min_liste variabel og oppdaterer listen med kvadratet av hvert tall. Uten lagres i updated_list-variabelen.

Bruker map() med Python innebygde funksjoner

Python map()-funksjonen er en innebygd funksjon og kan ogsรฅ brukes med andre innebygde funksjoner tilgjengelig i Python. I eksempelet skal vi benytte oss av Python round() innebygd funksjon som runder av verdiene som er gitt.

Eksempel:

Listen jeg har er my_list = [2.6743,3.63526,4.2325,5.9687967,6.3265,7.6988,8.232,9.6907] .

Jeg trenger de avrundede verdiene for hvert element i listen. Vi vil bruke round() som funksjon for รฅ kartlegge().

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))

Utgang:

<map object at 0x000000E65F901748>
[3, 4, 4, 6, 6, 8, 8, 10]

round()-funksjonen brukes pรฅ alle elementene i listen, og den returnerer en liste med alle verdier avrundet som vist i utdataene.

Bruke map() med en streng som en iterator

Vi kan ogsรฅ bruke map() pรฅ en streng. I Python, en streng fungerer som en matrise slik at vi enkelt kan bruke den inne i kartet().

I eksemplet har vi en funksjon myMapFunc() som tar seg av รฅ konvertere den gitte strengen til store bokstaver. Funksjonen myMapFunc () er gitt til map()-funksjonen. Kartfunksjonen vil ta seg av รฅ konvertere strengen gitt til store bokstaver ved รฅ sende strengen til 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="")

Utgang:

<map object at 0x000000DF2E711748>
WELCOME TO GURU99 TUTORIALS!

Bruker map() med listof Numbers

For รฅ jobbe med listen i map() tar du en liste med tall og multipliserer hvert tall i listen med 10.

Listen vi skal bruke er: [2,3,4,5,6,7,8,9]. Funksjonen myMapFunc () tar seg av รฅ multiplisere det gitte tallet med 10. Funksjonen er gitt for รฅ kartlegge sammen med listen.

Eksempel:

def myMapFunc(n):
    return n*10

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

updated_list = map(myMapFunc, my_list)
print(updated_list)
print(list(updated_list))

Utgang:

<map object at 0x000000EE2C061898>
[20, 30, 40, 50, 60, 70, 80, 90]

Utgangen vi ser er at hvert tall i listen er

ganget med 10.

Bruke map() med Tuple

En tuppel er en gjenstand i Python som har elementer atskilt med komma og omsluttet av runde parenteser. I eksemplet tar vi en tuppel med strengverdier. Funksjonen vi skal bruke vil konvertere verdiene som er gitt til store bokstaver.

Eksempel:

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))

Utgang:

<map object at 0x0000009C3C3A16A0>
['PHP', 'JAVA', 'PYTHON', 'C++', 'C']

Utgangen vi fรฅr er en tuppel tilbake med alle verdiene i den er konvertert til store bokstaver.

Bruke map() med Dictionary

A ordbok i Python er opprettet med krรธllete parenteser({}). Siden ordboken er en iterator, kan du bruke den i map()-funksjonen. La oss nรฅ bruke en ordbok som en iterator i map()-funksjonen.

Fรธlgende eksempel viser hvordan ordbok-iteratoren fungerer i map()

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

Utgang:

<map object at 0x0000007EB451DEF0>
[20, 30, 40, 50, 60, 70, 80, 90]

Bruke map() med Set

Satt i Python er en uordnet samling av varer i krรธllete parentes(()). Siden set() ogsรฅ er en iterator, kan du bruke den i map()-funksjonen.

Her er et fungerende eksempel pรฅ bruk av set som en iterator i map()

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

Utgang:

<map object at 0x000000AC8F05DEF0>
[20, 30, 40, 50, 60, 70, 80, 90]

Bruker map() med Lambda-funksjon

In Python, brukes lambda-uttrykk for รฅ konstruere anonyme funksjoner. Du mรฅ bruke lambda nรธkkelordet akkurat som du bruker def for รฅ definere normale funksjoner.

Sรฅ i eksemplet skal vi bruke lambda-funksjonen inne i kartet(). Lambda-funksjonen vil multiplisere hver verdi i listen med 10.

Eksempel:

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))

Utgang:

<map object at 0x000000BD18B11898>
[20, 30, 40, 50, 60, 70, 80, 90]

Bruke flere iteratorer i map()-funksjonen

Eksempel 1: Sende to listeiteratorer til map()

Du kan sende mer enn รฉn iterator, dvs. en liste, en tuppel, osv. alt samtidig til map()-funksjonen.

For eksempel hvis du vil legge til to lister. Det samme kan gjรธres ved รฅ bruke map()-funksjonen. Vi kommer til รฅ bruke to lister min_liste1 og min_liste2.

I eksemplet nedenfor blir det fรธrste elementet i min_liste1 lagt til det fรธrste elementet i min_liste2. Funksjonen myMapFunc() tar inn elementer av min_liste1 og min_liste2 og returnerer summen av begge.

Her er arbeidseksemplet pรฅ รฅ legge til to gitte lister ved รฅ bruke map()-funksjonen.

def myMapFunc(list1, list2):
    return list1+list2

my_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))

Utgang:

<map object at 0x0000004D5F751860>
[6, 11, 16, 21, 26, 31, 36]

Eksempel 2: Sender en Tuple og en listeiterator for รฅ kartlegge()

Vi skal bruke en liste og en tuppel-iterator i map()-funksjonen. Funksjonen er gitt for รฅ kartlegge โ€“ myMapFunc() vil fรฅ elementene fra listen og Tuple. Elementene vil bli satt sammen med et understrek(_). Arbeidseksemplet er som vist nedenfor:

def myMapFunc(list1, tuple1):
    return list1+"_"+tuple1

my_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))

Utgang:

<map object at 0x00000059F37BB4E0>
['a_PHP', 'b_Java', 'b_Python', 'd_C++', 'e_C']

Sammendrag

  • Python map() er en innebygd funksjon som bruker en funksjon pรฅ alle elementene i en iterator gitt som input. En iterator, for eksempel, kan vรฆre en liste, en tuppel, en streng osv. og den returnerer et itererbart kartobjekt.
  • Map()-funksjonen kommer til รฅ bruke den gitte funksjonen pรฅ alle elementene inne i iteratoren og returnere et iterbart kartobjekt, dvs. en tuppel, en liste, etc.
  • Python map()-funksjonen er en innebygd funksjon og kan ogsรฅ brukes med andre innebygde funksjoner tilgjengelig i Python.
  • En tuppel er en gjenstand i Python som har elementer atskilt med komma og omsluttet av runde parenteser. I eksemplet vil ta en tuppel med strengverdier. Funksjonen vi skal bruke vil konvertere verdiene som er gitt til store bokstaver.
  • En ordbok i Python er opprettet med krรธllete parenteser({}). Siden ordboken er en iterator, kan du bruke den i map()-funksjonen.
  • Satt i Python er en uordnet samling av varer i krรธllete parentes(()). Siden set() ogsรฅ er en iterator, kan du bruke den i map()-funksjonen.
  • In Python, lambda-uttrykk (eller lambda-former) brukes til รฅ konstruere anonyme funksjoner. Sรฅ lambda nรธkkelordet mรฅ brukes nรฅr du vil bruke lambda inne i kartet().
  • Du kan sende mer enn รฉn iterator, dvs. en liste, en tuppel til map()-funksjonen.

Oppsummer dette innlegget med: