Python kaart ()

De functie map () past een gegeven functie toe op elk item van een iterabele (lijst, tupel enz.) En geeft een lijst met de resultaten terug.

De syntaxis van map()is:

 kaart (functie, itereerbaar, …)

map () Parameter

  • functie - map()geeft elk item van de iterabele door aan deze functie.
  • itereerbaar - itereerbaar dat in kaart moet worden gebracht

U kunt meer dan één iterabel doorgeven aan de map()functie.

Retourwaarde van kaart ()

De map()functie past een bepaalde functie toe op elk item van een iterabele en retourneert een lijst met de resultaten.

De geretourneerde waarde van map()(map-object) kan vervolgens worden doorgegeven aan functies zoals list () (om een ​​lijst te maken), set () (om een ​​set te maken) enzovoort.

Voorbeeld 1: werking van map ()

 def calculateSquare(n): return n*n numbers = (1, 2, 3, 4) result = map(calculateSquare, numbers) print(result) # converting map object to set numbersSquare = set(result) print(numbersSquare)

Uitvoer

 (16, 1, 4, 9)

In het bovenstaande voorbeeld is elk item van de tupel vierkant.

Aangezien map()verwacht wordt dat een functie wordt doorgegeven, worden lambda-functies vaak gebruikt tijdens het werken met map()functies.

Een lambda-functie is een korte functie zonder naam. Bezoek deze pagina voor meer informatie over Python lambda-functie.

Voorbeeld 2: Hoe de lambda-functie te gebruiken met map ()?

 numbers = (1, 2, 3, 4) result = map(lambda x: x*x, numbers) print(result) # converting map object to set numbersSquare = set(result) print(numbersSquare)

Uitvoer

 (16, 1, 4, 9)

Er is geen verschil in functionaliteiten van dit voorbeeld en voorbeeld 1 .

Voorbeeld 3: Meerdere iteratoren doorgeven aan map () met Lambda

In dit voorbeeld worden overeenkomende items van twee lijsten toegevoegd.

 num1 = (4, 5, 6) num2 = (5, 6, 7) result = map(lambda n1, n2: n1+n2, num1, num2) print(list(result))

Uitvoer

 (9, 11, 13)

Interessante artikelen...