⊗pyPmFnMa 17 of 129 menu

De map-functie voor het itereren van objecten in Python

Stel we hebben een functie square voor het kwadrateren van getallen. En er is een lijst waarop we deze functie moeten toepassen:

def square(num): return num ** 2 lst = [2, 3, 6, 8, 15]

In Python kunnen we voor deze taak gebruikmaken van de speciale functie map. Ze neemt als parameters een functie en een lijst, waarop ze moet worden toegepast. Laten we map gebruiken om het voorbeeld op te lossen:

res = map(square, lst) print(res)

Elke lijst, net als elk complex object, neemt veel ruimte in beslag in het systeemgeheugen van Python. Daarom wordt er, om bronnen te besparen, niet een nieuwe lijst geretourneerd, maar een speciaal itereerbaar map-object:

<map object at 0x000001F16674BA00>

Laten we het doorlopen met een lus:

for el in res: print(el)

Als resultaat worden alle elementen van de nieuwe lijst weergegeven:

4 9 36 64 225

Om van een map-object een nieuwe lijst te maken, moet je de functie list erop toepassen:

lst = [2, 3, 6, 8, 15] res = map(square, lst)

Als resultaat wordt de volgende lijst weergegeven:

[4, 9, 36, 64, 225]

Ook kun je bij het werken met de functie map in de eerste parameter een lambda-functie opgeven. Laten we het vorige voorbeeld herschrijven met behulp van een lambda-functie:

res = map(lambda num: num ** 2, lst, lst) print(list(res))

Herschrijf de volgende code met een lambda-functie:

def func(num): return num + 1 lst = [1, 2, 3, 4, 5] res = map(func, lst) print(list(res))

Herschrijf de volgende code met een lambda-functie:

def func(txt): return txt[::-1] lst = ['123', '456', '789'] res = map(func, lst) print(list(res))
Nederlands
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEspañolEestiSuomiFrançaisहिन्दीMagyarՀայերենIndonesiaItaliano日本語ქართულიҚазақ한국어КыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNorskPolskiPortuguêsRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
Wij gebruiken cookies voor de werking van de site, analyse en personalisatie. De verwerking van gegevens gebeurt volgens het Privacybeleid.
alles accepteren aanpassen weigeren