ComenzarEmpieza gratis

La función map()

¡Vamos a hacer un mapping!

¿Recuerdas cómo funciona zip()? Combina los iterables dados de modo que los elementos con el mismo índice queden en la misma tupla. Además, la salida queda limitada por el iterable más corto.

Tu tarea es definir tu propia función my_zip() con *args para representar un número variable de iterables, p. ej., listas, cadenas, tuplas, etc. En lugar de un objeto zip, my_zip() debe devolver ya una lista de tuplas.

Comentario: en un caso real, habría que comprobar primero que args contiene iterables. Aquí lo omitimos por simplicidad.

Este ejercicio forma parte del curso

Practicing Coding Interview Questions in Python

Ver curso

Instrucciones del ejercicio

  • Obtén el iterable lengths a partir de args usando map() y encuentra la longitud mínima.
  • Dentro del bucle, crea el mapping con map() para recuperar los elementos de args con el mismo índice i.
  • Convierte el mapping en una tupla y añádelo a tuple_list.

Ejercicio interactivo práctico

Prueba este ejercicio y completa el código de muestra.

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)
Editar y ejecutar código