MulaiMulai sekarang secara gratis

The map() function

Let's do some mapping!

Do you remember how zip() works? It merges given Iterables so that items with the same index fall into the same tuple. Moreover, the output is restricted by the shortest Iterable.

Your task is to define your own my_zip() function with *args depicting a variable number of Iterables, e.g. lists, strings, tuples etc. Rather than a zip object, my_zip() should already return a list of tuples.

Comment: args should be checked whether they contain Iterables first. But we omit it for simplicity.

Latihan ini adalah bagian dari kursus

Practicing Coding Interview Questions in Python

Lihat Kursus

Petunjuk latihan

  • Retrieve Iterable lengths from args using map() and find the minimal length.
  • Within the loop, create the mapping using map() to retrieve the elements in args with the same index i.
  • Convert the mapping to a tuple and append it to the tuple_list.

Latihan interaktif praktis

Cobalah latihan ini dengan menyelesaikan kode contoh berikut.

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)
Edit dan Jalankan Kode