Python map() funksjon

kart() funksjon returnerer et kartobjekt (som er en iterator) av resultatene etter å ha brukt den gitte funksjonen på hvert element i en gitt iterabel (liste, tuppel osv.)

Python map() Funksjon Syntaks

Syntaks : kart(moro, iter)

Parametere:

  • moro: Det er en funksjon som kartet sender hvert element av gitt iterable til.
  • iter: Det er iterabelt som skal kartlegges.

MERK: Du kan sende en eller flere iterable til map()-funksjonen.

Returnerer: Returnerer en liste over resultatene etter å ha brukt den gitte funksjonen på hvert element i en gitt iterabel (liste, tuppel osv.)

MERK : Den returnerte verdien fra map() (kartobjekt) kan deretter overføres til funksjoner som list() (for å lage en liste), set() (for å lage et sett) .

map() i Python-eksempler

Demonstrasjon av map() i Python

I dette eksemplet demonstrerer vi map()-funksjonen i Python .

Python3




# Python program to demonstrate working> # of map.> # Return double of n> def> addition(n):> > return> n> +> n> # We double all numbers using map()> numbers> => (> 1> ,> 2> ,> 3> ,> 4> )> result> => map> (addition, numbers)> print> (> list> (result))>

Produksjon

[2, 4, 6, 8] 

map() med Lambda Expressions

Vi kan også bruke lambda-uttrykk med kart for å oppnå resultatet ovenfor. I dette eksemplet bruker vi map() med lambda-uttrykk.

Python3




# Double all numbers using map and lambda> numbers> => (> 1> ,> 2> ,> 3> ,> 4> )> result> => map> (> lambda> x: x> +> x, numbers)> print> (> list> (result))>

Produksjon

[2, 4, 6, 8] 

Legg til to lister ved hjelp av kart og lambda

I dette eksemplet bruker vi kart og lambda for å legge til to lister.

Python3




# Add two lists using map and lambda> numbers1> => [> 1> ,> 2> ,> 3> ]> numbers2> => [> 4> ,> 5> ,> 6> ]> result> => map> (> lambda> x, y: x> +> y, numbers1, numbers2)> print> (> list> (result))>

Produksjon

[5, 7, 9] 

Endre strengen ved å bruke map()

I dette eksemplet bruker vi map()-funksjonen for å endre strengen. Vi kan lage et kart fra en iterabel i Python.

Python3




# List of strings> l> => [> 'sat'> ,> 'bat'> ,> 'cat'> ,> 'mat'> ]> # map() can listify the list of strings individually> test> => list> (> map> (> list> , l))> print> (test)>

Produksjon

[['s', 'a', 't'], ['b', 'a', 't'], ['c', 'a', 't'], ['m', 'a', 't']] 

Tidskompleksitet : O(n), hvor n er antall elementer i inndatalisten l.
Hjelpeplass : O(n)

if Uttalelse med kart()

I eksemplet dobler funksjonen double_even() partall og lar oddetall være uendret. Map()-funksjonen brukes til å bruke denne funksjonen på hvert element i talllisten, og en if-setning brukes i funksjonen for å utføre den nødvendige betingede logikken.

Python3




# Define a function that doubles even numbers and leaves odd numbers as is> def> double_even(num):> > if> num> %> 2> => => 0> :> > return> num> *> 2> > else> :> > return> num> # Create a list of numbers to apply the function to> numbers> => [> 1> ,> 2> ,> 3> ,> 4> ,> 5> ]> # Use map to apply the function to each element in the list> result> => list> (> map> (double_even, numbers))> # Print the result> print> (result)> # [1, 4, 3, 8, 5]>

Produksjon

[1, 4, 3, 8, 5] 

Tidskompleksitet : O(n)
Hjelpekompleksitet: På)