ÎncepețiÎncepe gratuit

Funcția map()

Să exersăm puțin cu map()!

Îți amintești cum funcționează zip()? Aceasta combină Iterabile, astfel încât elementele cu același index ajung în același tuplu. În plus, rezultatul este limitat de cel mai scurt Iterabil.

Sarcina ta este să definești propria funcție my_zip() cu *args reprezentând un număr variabil de Iterabile, de ex. liste, șiruri de caractere, tupluri etc. În loc să returneze un obiect zip, my_zip() ar trebui să returneze direct o listă de tupluri.

Observație: în mod normal, ar trebui să verifici dacă args conține Iterabile, dar omitem acest pas pentru simplitate.

Acest exercițiu face parte din cursul

Exersarea întrebărilor de interviu de programare în Python

Vezi cursul

Instrucțiuni pentru exercițiu

  • Obține lengths (lungimile) din args folosind map() și determină lungimea minimă.
  • În interiorul buclei, creează mapping folosind map() pentru a prelua elementele din args cu același index i.
  • Convertește mapping-ul într-un tuplu și adaugă-l la tuple_list.

Exercițiu interactiv practic

Încearcă acest exercițiu completând acest cod de exemplu.

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)
Editează și rulează codul