Funzione Python map () con ESEMPI

Python map () applica una funzione a tutti gli elementi di un iteratore fornito come input. Un iteratore, ad esempio, può essere una lista, una tupla, un insieme, un dizionario, una stringa e restituisce un oggetto mappa iterabile. Python map () è una funzione incorporata.

In questo tutorial imparerai:

  • Sintassi:
  • Come funziona la funzione map ()?
  • Usare map () con le funzioni integrate di Python
  • Utilizzo di map () con una stringa come iteratore
  • Utilizzando map () con listof Numbers
  • Usare map () con Tuple
  • Utilizzando map () con Dictionary
  • Utilizzando map () con Set
  • Utilizzo di map () con la funzione Lambda
  • Utilizzo di più iteratori all'interno della funzione map ()

Sintassi:

map(function, iterator1,iterator2… iteratorN)

Parametri

Eccone due importanti

  • funzione: una funzione obbligatoria da assegnare alla mappa, che verrà applicata a tutti gli elementi disponibili nell'iteratore.
  • iteratore: un oggetto obbligatorio iterabile. Può essere un elenco, una tupla, ecc. È possibile passare più oggetti iteratori alla funzione map ().

Valore di ritorno

La funzione map () applicherà la funzione data a tutti gli elementi all'interno dell'iteratore e restituirà un oggetto mappa iterabile, ad esempio una tupla, una lista, ecc.

Come funziona la funzione map ()?

La funzione map () accetta due input come una funzione e un oggetto iterabile. La funzione assegnata a map () è una funzione normale e itererà su tutti i valori presenti nell'oggetto iterabile fornito.

Ad esempio, considera di avere un elenco di numeri e di voler trovare il quadrato di ciascuno dei numeri.

Per ottenere l'output, abbiamo bisogno della funzione che restituirà il quadrato del numero dato. La funzione sarà la seguente:

def square(n):return n*n

L'elenco degli elementi che vogliamo trovare nel quadrato è il seguente:

my_list = [2,3,4,5,6,7,8,9]

Ora usiamo la funzione built-in map () python per ottenere il quadrato di ciascuno degli elementi in my_list.

Il codice finale è il seguente:

def square(n):return n*nmy_list = [2,3,4,5,6,7,8,9]updated_list = map(square, my_list)print(updated_list)print(list(updated_list))

Produzione:

[4, 9, 16, 25, 36, 49, 64, 81]

L'output della funzione map (), come mostrato nell'output, è un oggetto mappa visualizzato sullo schermo come .

Dovrai iterare l'output dalla mappa usando un ciclo for o usando il metodo list () per ottenere l'output finale. Ho usato list () nel codice che mostra i valori all'interno della lista data.

Quindi, usando la funzione map (), siamo in grado di ottenere il quadrato di ogni numero. L'elenco dato a map era [2,3,4,5,6,7,8,9] e usando la funzione square () l'output da map () abbiamo ottenuto è [4, 9, 16, 25, 36, 49, 64, 81].

La funzione map () applica la funzione square () a tutti gli elementi della lista. Ad esempio, la variabile my_list e aggiorna l'elenco con il quadrato di ogni numero. L'out viene memorizzato nella variabile updated_list.

Usare map () con le funzioni integrate di Python

La funzione Python map () è una funzione incorporata e può essere utilizzata anche con altre funzioni integrate disponibili in Python. Nell'esempio, utilizzeremo la funzione incorporata round () di Python che arrotonda i valori forniti.

Esempio:

L'elenco che ho è my_list = [2.6743,3.63526,4.2325,5.9687967,6.3265,7.6988,8.232,9.6907].

Ho bisogno dei valori arrotondati per ogni elemento presente nell'elenco. Useremo round () come funzione per map ().

my_list = [2.6743,3.63526,4.2325,5.9687967,6.3265,7.6988,8.232,9.6907]updated_list = map(round, my_list)print(updated_list)print(list(updated_list))

Produzione:

[3, 4, 4, 6, 6, 8, 8, 10]

La funzione round () viene applicata a tutti gli elementi nell'elenco e restituisce un elenco con tutti i valori arrotondati come mostrato nell'output.

Utilizzo di map () con una stringa come iteratore

Possiamo anche usare map () su una stringa. In Python, una stringa si comporta come un array, quindi possiamo usarla facilmente all'interno di map ().

Nell'esempio, abbiamo una funzione myMapFunc () che si occupa di convertire la stringa data in maiuscolo. La funzione myMapFunc () viene assegnata alla funzione map (). La funzione map si occuperà di convertire la stringa data in maiuscolo passando la stringa a myMapFunc ().

def myMapFunc(s):return s.upper()my_str = "welcome to guru99 tutorials!"updated_list = map(myMapFunc, my_str)print(updated_list)for i in updated_list:print(i, end)

Produzione:

WELCOME TO GURU99 TUTORIALS!

Utilizzando map () con listof Numbers

Per lavorare con l'elenco in map () sarà necessario un elenco di numeri e moltiplicherà ogni numero nell'elenco per 10.

La lista che useremo è: [2,3,4,5,6,7,8,9]. La funzione myMapFunc () si occupa di moltiplicare il numero dato per 10. La funzione viene assegnata da mappare insieme alla lista.

Esempio:

def myMapFunc(n):return n*10my_list = [2,3,4,5,6,7,8,9]updated_list = map(myMapFunc, my_list)print(updated_list)print(list(updated_list))

Produzione:

[20, 30, 40, 50, 60, 70, 80, 90]

L'output che vediamo è che ogni numero nell'elenco è

moltiplicato per 10.

Usare map () con Tuple

Una tupla è un oggetto in Python che ha elementi separati da virgole e racchiusi tra parentesi tonde. Nell'esempio, prenderemo una tupla con valori stringa. La funzione che useremo convertirà i valori dati in maiuscolo.

Esempio:

def myMapFunc(n):return n.upper()my_tuple = ('php','java','python','c++','c')updated_list = map(myMapFunc, my_tuple)print(updated_list)print(list(updated_list))

Produzione:

['PHP', 'JAVA', 'PYTHON', 'C++', 'C']

L'output che otteniamo è una tupla con tutti i valori al suo interno convertiti in maiuscolo.

Utilizzando map () con Dictionary

Un dizionario in Python viene creato utilizzando parentesi graffe ({}). Poiché il dizionario è un iteratore, puoi utilizzarlo all'interno della funzione map (). Usiamo ora un dizionario come iteratore all'interno della funzione map ().

L'esempio seguente mostra il funzionamento dell'iteratore del dizionario all'interno di map ()

def myMapFunc(n):return n*10my_dict = {2,3,4,5,6,7,8,9}finalitems = map(myMapFunc, my_dict)print(finalitems)print(list(finalitems))

Produzione:

[20, 30, 40, 50, 60, 70, 80, 90]

Utilizzando map () con Set

Impostato in Python è una raccolta non ordinata di elementi tra parentesi graffe (()). Poiché set () è anche un iteratore, puoi utilizzarlo all'interno della funzione map ().

Ecco un esempio funzionante dell'uso di set come iteratore all'interno di map ()

def myMapFunc(n):return n*10my_set = {2,3,4,5,6,7,8,9}finalitems = map(myMapFunc, my_set)print(finalitems)print(list(finalitems))

Produzione:

[20, 30, 40, 50, 60, 70, 80, 90]

Utilizzo di map () con la funzione Lambda

In Python, le espressioni lambda vengono utilizzate per costruire funzioni anonime. Dovrai usare la parola chiave lambda proprio come usi def per definire le normali funzioni.

Quindi nell'esempio, useremo la funzione lambda all'interno di map (). La funzione lambda moltiplicherà ogni valore nell'elenco per 10.

Esempio:

my_list = [2,3,4,5,6,7,8,9]updated_list = map(lambda x: x * 10, my_list)print(updated_list)print(list(updated_list))

Produzione:

[20, 30, 40, 50, 60, 70, 80, 90]

Utilizzo di più iteratori all'interno della funzione map ()

Esempio 1: passaggio di due iteratori di elenco a map ()

È possibile inviare più di un iteratore, cioè una lista, una tupla, ecc., Tutti contemporaneamente alla funzione map ().

Ad esempio, se desideri aggiungere due elenchi. Lo stesso può essere fatto usando la funzione map (). Utilizzeremo due elenchi my_list1 e my_list2.

Nell'esempio seguente, il primo elemento in my_list1 viene aggiunto al primo elemento di my_list2. La funzione myMapFunc () accetta gli elementi di my_list1 e my_list2 e restituisce la somma di entrambi.

Ecco l'esempio funzionante dell'aggiunta di due elenchi dati utilizzando la funzione map ().

def myMapFunc(list1, list2):return list1+list2my_list1 = [2,3,4,5,6,7,8,9]my_list2 = [4,8,12,16,20,24,28]updated_list = map(myMapFunc, my_list1,my_list2)print(updated_list)print(list(updated_list))

Produzione:

[6, 11, 16, 21, 26, 31, 36]

Esempio 2: passaggio di una tupla e di un iteratore di lista a map ()

Useremo una lista e un iteratore di tupla nella funzione map (). La funzione è data a map - myMapFunc () otterrà gli elementi dalla lista e da Tuple. Gli elementi verranno uniti con un trattino basso (_). L'esempio di lavoro è come mostrato di seguito:

def myMapFunc(list1, tuple1):return list1+"_"+tuple1my_list = ['a','b', 'b', 'd', 'e']my_tuple = ('PHP','Java','Python','C++','C')updated_list = map(myMapFunc, my_list,my_tuple)print(updated_list)print(list(updated_list))

Produzione:

['a_PHP', 'b_Java', 'b_Python', 'd_C++', 'e_C']

Sommario

  • Python map () è una funzione incorporata che applica una funzione a tutti gli elementi di un iteratore fornito come input. Un iteratore, ad esempio, può essere una lista, una tupla, una stringa, ecc. E restituisce un oggetto mappa iterabile.
  • La funzione map () applicherà la funzione data a tutti gli elementi all'interno dell'iteratore e restituirà un oggetto mappa iterabile, ad esempio una tupla, una lista, ecc.
  • La funzione Python map () è una funzione incorporata e può essere utilizzata anche con altre funzioni integrate disponibili in Python.
  • Una tupla è un oggetto in Python che ha elementi separati da virgole e racchiusi tra parentesi tonde. Nell'esempio verrà utilizzata una tupla con valori stringa. La funzione che useremo convertirà i valori dati in maiuscolo.
  • Un dizionario in Python viene creato utilizzando parentesi graffe ({}). Poiché il dizionario è un iteratore, puoi utilizzarlo all'interno della funzione map ().
  • Impostato in Python è una raccolta non ordinata di elementi tra parentesi graffe (()). Poiché set () è anche un iteratore, puoi utilizzarlo all'interno della funzione map ().
  • In Python, le espressioni lambda (o form lambda) vengono utilizzate per costruire funzioni anonime. Quindi la parola chiave lambda deve essere utilizzata quando si desidera utilizzare lambda all'interno di map ().
  • Puoi inviare più di un iteratore, cioè una lista, una tupla alla funzione map ().

Articoli interessanti...