logo

Python map() funkcija

zemljevid() funkcija vrne preslikavni objekt (ki je iterator) rezultatov po uporabi dane funkcije za vsak element dane iterable (seznam, tuple itd.)

Sintaksa funkcije Python map().

Sintaksa : zemljevid (zabava, iter)

Parametri:



  • zabavno: To je funkcija, ki ji preslikava posreduje vsak element dane iterable.
  • iter: Ponovljivo je, kar je treba preslikati.

OPOMBA: Funkciji map() lahko posredujete eno ali več iterable.

Vrne: Vrne seznam rezultatov po uporabi dane funkcije za vsak element dane iterable (seznam, tuple itd.)

OPOMBA : Vrednost, vrnjeno iz map() (predmet zemljevida), se nato lahko posreduje funkcijam, kot sta list() (za ustvarjanje seznama), set() (za ustvarjanje niza).

map() v primerih Python

Predstavitev map() v Pythonu

V tem primeru prikazujemo funkcijo map() v 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))>

za zanko bash
>

>

Izhod

[2, 4, 6, 8]>

map() z lambda izrazi

Lahko tudi uporabimo lambda izrazi z zemljevidom, da dosežete zgornji rezultat. V tem primeru uporabljamo map() z lambda izrazom.

Python3




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

>

>

Izhod

[2, 4, 6, 8]>

Dodajte dva seznama z uporabo map in lambda

V tem primeru uporabljamo zemljevid in lambdo za dodajanje dveh seznamov.

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

>

>

razlika med lisico in volkom
Izhod

[5, 7, 9]>

Spremenite niz z uporabo map()

V tem primeru uporabljamo funkcijo map() za spreminjanje niza. Iz iterable v Pythonu lahko ustvarimo zemljevid.

Python3




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

>

>

Izhod

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

Časovna zapletenost : O(n), kjer je n število elementov na vhodnem seznamu l.
Pomožni prostor : O(n)

if Izjava z map()

V primeru funkcija double_even() podvoji soda števila in pusti liha števila nespremenjena. Funkcija map() se uporablja za uporabo te funkcije za vsak element seznama številk, stavek if pa se uporablja znotraj funkcije za izvajanje potrebne pogojne logike.

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

java razdeli niz z ločilom
>

>

Izhod

[1, 4, 3, 8, 5]>

Časovna zapletenost : O(n)
Pomožna kompleksnost: O(n)