Začněte nyníZačněte zdarma

Funkce map()

Pojďme si procvičit mapování!

Pamatuješ si, jak funguje zip()? Spojí zadané iterovatelné objekty tak, že prvky se stejným indexem skončí ve stejné n-tici. Výstup je navíc omezen délkou nejkratšího iterovatelného objektu.

Tvým úkolem je definovat vlastní funkci my_zip() s parametrem *args, který představuje proměnný počet iterovatelných objektů – například seznamy, řetězce nebo n-tice. Místo objektu zipmy_zip() rovnou vracet seznam n-tic.

Poznámka: V praxi by bylo vhodné ověřit, zda args obsahuje iterovatelné objekty. Pro jednoduchost to ale vynecháme.

Toto cvičení je součástí kurzu

Procvičování otázek z kódovacích pohovorů v Pythonu

Zobrazit kurz

Pokyny k cvičení

  • Pomocí map() získej z args délky iterovatelných objektů do proměnné lengths a najdi minimální délku.
  • Uvnitř smyčky vytvoř mapping pomocí map() tak, aby se z každého objektu v args načetl prvek s indexem i.
  • Převeď mapování na n-tici a přidej ji do tuple_list.

Interaktivní cvičení na vyzkoušení si v praxi

Vyzkoušejte si toto cvičení dokončením tohoto ukázkového kódu.

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)
Upravit a spustit kód