CommencezCommencez gratuitement

La fonction map()

Passons au mappage!

Vous souvenez-vous du fonctionnement de zip()? Cette fonction fusionne les itérables fournis de sorte que les éléments ayant le même indice se retrouvent dans le même tuple. De plus, la sortie est limitée par l'itérable le plus court.

Votre tâche est de définir votre propre fonction my_zip() avec *args représentant un nombre variable d'itérables, p. ex. des listes, des chaînes, des tuples, etc. Plutôt qu'un objet zip, my_zip() doit déjà retourner une liste de tuples.

Remarque : idéalement, on vérifierait d'abord que args contient bien des itérables. Pour simplifier, nous l'omettons ici.

Cette activité fait partie du cours

S'entraîner aux questions d'entrevue de programmation en Python

Voir le cours

Instructions de l’exercice

  • Récupérez l'itérable lengths à partir de args à l'aide de map() et trouvez la longueur minimale.
  • Dans la boucle, créez le mapping avec map() pour récupérer les éléments de args ayant le même indice i.
  • Convertissez le mappage en tuple et ajoutez-le à tuple_list.

Exercice interactif pratique

Essayez cet exercice en complétant ce code d’exemple.

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)
Modifier et exécuter le code