logo

Funkcia Python map().

mapa() funkcia vracia objekt mapy (čo je iterátor) výsledkov po aplikovaní danej funkcie na každú položku danej iterácie (zoznam, n-tica atď.)

Python map() Syntax funkcie

Syntax : mapa (zábava, iter)



Parametre:

  • zábava: Je to funkcia, ktorej mapa prechádza každý prvok danej iterovateľnosti.
  • iter: Je iterovateľné, čo sa má zmapovať.

POZNÁMKA: Funkcii map() môžete odovzdať jednu alebo viac iterovateľných.

Vrátenie: Vráti zoznam výsledkov po použití danej funkcie na každú položku danej iterovateľnej položky (zoznam, n-tica atď.)



POZNÁMKA : Vrátená hodnota z map() (mapový objekt) sa potom môže odovzdať funkciám ako list() (na vytvorenie zoznamu), set() (na vytvorenie množiny) .

map() v príkladoch Pythonu

Ukážka map() v Pythone

V tomto príklade demonštrujeme funkciu 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))>

tabuľku reakcií
>

>

Výkon

[2, 4, 6, 8]>

map() s výrazmi Lambda

Môžeme použiť aj lambda výrazy s mapou na dosiahnutie vyššie uvedeného výsledku. V tomto príklade používame map() s výrazom lambda.

Python3




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

>

>

Výkon

[2, 4, 6, 8]>

Pridajte dva zoznamy pomocou mapy a lambda

V tomto príklade používame mapu a lambda na pridanie dvoch zoznamov.

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

býci vs vôl

>

>

Výkon

[5, 7, 9]>

Upravte reťazec pomocou map()

V tomto príklade používame funkciu map() na úpravu reťazca. Môžeme vytvoriť mapu z iterovateľného v Pythone.

Python3




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

>

1nf 2nf 3nf

>

Výkon

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

Časová zložitosť : O(n), kde n je počet prvkov vo vstupnom zozname l.
Pomocný priestor : O(n)

if Vyhlásenie s mapou()

V príklade funkcia double_even() zdvojnásobuje párne čísla a ponecháva nepárne čísla nezmenené. Funkcia map() sa používa na aplikáciu tejto funkcie na každý prvok číselného zoznamu a v rámci funkcie sa používa príkaz if na vykonanie potrebnej podmienenej logiky.

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

>

>

Výkon

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

Časová zložitosť : O(n)
Pomocná zložitosť: O(n)