Inizia subitoInizia gratis

La funzione map()

Facciamo un po' di mapping!

Ti ricordi come funziona zip()? Unisce gli Iterable forniti in modo che gli elementi con lo stesso indice finiscano nella stessa tupla. Inoltre, l'output è limitato dall'Iterable più corto.

Il tuo compito è definire la tua funzione my_zip() con *args per indicare un numero variabile di Iterable, ad esempio liste, stringhe, tuple, ecc. Invece di restituire un oggetto zip, my_zip() deve restituire direttamente una lista di tuple.

Nota: in teoria bisognerebbe prima verificare che args contenga solo Iterable. Ma qui lo omettiamo per semplicità.

Questo esercizio fa parte del corso

Esercitarsi con le domande di colloquio di coding in Python

Visualizza corso

Istruzioni dell'esercizio

  • Ricava l'Iterable lengths da args usando map() e trova la lunghezza minima.
  • All'interno del ciclo, crea il mapping usando map() per recuperare gli elementi in args con lo stesso indice i.
  • Converti il mapping in una tupla e aggiungila a tuple_list.

esercizio interattivo pratico

Prova questo esercizio completando questo codice di esempio.

def my_zip(*args):
    
    # Retrieve Iterable lengths and find the minimal length
    lengths = list(map(____, ____))
    min_length = ____

    tuple_list = []
    for i in range(0, min_length):
        # Map the elements in args with the same index i
        mapping = map(____, args)
        # Convert the mapping and append it to tuple_list
        tuple_list.append(____(____))

    return tuple_list

result = my_zip([1, 2, 3], ['a', 'b', 'c', 'd'], 'DataCamp')
print(result)
Modifica ed esegui il codice