Map () -toiminto käyttää tiettyä toimintoa iteroitavaan kappaleeseen (luettelo, sarja jne.) Ja palauttaa luettelon tuloksista.
Syntaksi map()
on:
kartta (funktio, iteroitava,…)
kartta () Parametri
- funktio -
map()
välittää iteroitavan kohteen kaikki tälle toiminnolle. - iterable - iterable, joka on kartoitettava
Voit välittää toiminnolle useamman kuin yhden iteroitavan map()
.
Palautusarvo kartalta ()
map()
Funktio soveltaa annetaan funktion jokaiseen sellaisen iterable ja palauttaa luettelon tuloksista.
Palautettu arvo kohteesta map()
(karttaobjekti) voidaan sitten siirtää toiminnoille, kuten listalle () (luettelon luomiseksi), setille () ryhmän luomiseksi) ja niin edelleen.
Esimerkki 1: Kartan () käyttö
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)
Tuotos
(16, 1, 4, 9)
Yllä olevassa esimerkissä tuplan kukin kohta on neliö.
Koska map()
toiminnon odotetaan siirtyvän sisään, lambda-toimintoja käytetään yleisesti map()
toimintojen kanssa työskenneltäessä .
Lambda-funktio on lyhyt funktio ilman nimeä. Vieraile tällä sivulla saadaksesi lisätietoja Python lambda -toiminnosta.
Esimerkki 2: Kuinka käyttää lambda-toimintoa kartan () kanssa?
numbers = (1, 2, 3, 4) result = map(lambda x: x*x, numbers) print(result) # converting map object to set numbersSquare = set(result) print(numbersSquare)
Tuotos
(16, 1, 4, 9)
Tämän esimerkin ja esimerkin 1 toiminnallisuudessa ei ole eroa .
Esimerkki 3: Useiden iteraattoreiden välittäminen kartalle () Lambdaa käyttämällä
Tässä esimerkissä lisätään kahden luettelon vastaavat kohdat.
num1 = (4, 5, 6) num2 = (5, 6, 7) result = map(lambda n1, n2: n1+n2, num1, num2) print(list(result))
Tuotos
(9, 11, 13)