Convertiți lista în dicționar în Python

Transformarea unei liste într-un dicționar în Python nu este o sarcină complicată.

Vom explora diverse metode prin care putem realiza această conversie.

Introducere

Înainte de a începe instrucțiunile, haideți să analizăm un exemplu practic de conversie a unei liste într-un dicționar. Vom lucra cu o listă de tupluri (fiecare tuplu având două componente) sau cu o listă simplă de elemente. Vom lua aceste date de intrare și le vom transforma în dicționare.

Exemple practice:

În acest prim exemplu, am utilizat o listă de tupluri și am transformat-o într-un dicționar. Am folosit primul element din fiecare tuplu ca cheie, iar al doilea element ca valoare corespunzătoare în dicționar.

Intrare: list_one = [('a', 'A'), ('b', 'B'), ('c', 'C')]

Ieșire: {'a': 'A', 'b': 'B', 'c': 'C'}

În exemplul următor, am preluat o listă de elemente și am convertit-o într-un dicționar, atribuind elemente alternative ca chei și valori. Dacă lista are un număr impar de elemente, vom aloca valoarea null cheii care nu are o valoare corespunzătoare.

Intrare: list_one = ['a', 'A', 'b', 'B', 'c', 'C', 'd']

Ieșire: {'a': 'A', 'b': 'B', 'c': 'C', 'd': None}

Am prezentat scopul acestui tutorial. Vom analiza ambele exemple prin diverse metode. Să începem cu primul exemplu.

Conversia unei liste de tupluri într-un dicționar

Vom examina cum să transformăm o listă de tupluri într-un dicționar. Puteți încerca să scrieți codul urmând acești pași:

  • Începeți prin a crea o listă de tupluri cu date fictive, similară cu exemplele anterioare (asigurați-vă că fiecare tuplu din listă conține exact două elemente).
  • Aplicați metoda dict() listei de tupluri și salvați rezultatul într-o nouă variabilă.
  • Acesta este tot, am reușit să convertim o listă de tupluri într-un dicționar cu o singură linie de cod.
    # listă de tupluri
    list_of_tuples = [('a', 'A'), ('b', 'B'), ('c', 'C')]

    # conversia în dicționar
    list_of_tuples_dict = dict(list_of_tuples)

    # afișarea dicționarului rezultat
    print(list_of_tuples_dict)
    

Puteți verifica rezultatul codului de mai sus prin rularea acestuia. Veți obține rezultatul similar cu cel prezentat în exemplele anterioare.

Transformarea unei liste simple într-un dicționar

Am văzut cât de simplă este conversia unei liste de tupluri în dicționar în Python. În această secțiune, vom învăța cum să transformăm o listă obișnuită într-un dicționar.

Revedeți al doilea exemplu din prima parte a acestui tutorial pentru o înțelegere mai clară.

Urmați pașii de mai jos pentru a scrie codul pentru al doilea exemplu:

Am stabilit valoarea implicită ca None pentru elementele care nu au o pereche (cazul unei liste cu număr impar de elemente). Pentru a realiza acest lucru, vom folosi metoda zip_longest din modulul itertools.

  • Importați modulul itertools și definiți o listă cu un număr impar de elemente, similar cu exemplele prezentate.
  • Convertiți lista într-un iterabil, pentru a evita repetarea perechilor cheie-valoare în metoda zip_longest.
  • Acum, utilizați metoda zip_longest cu iterabilul și valoarea fillvalue setată ca None. Aceasta va returna un obiect zip.
    • Trebuie să transmitem iterabilul de două ori, deoarece metoda preia cheia și valoarea din două iterabile diferite. În cazul nostru, cheile și valorile se află în același iterabil, așa că trebuie să-l transmitem de două ori înainte de a seta valoarea de umplere.
  • Transformați obiectul zip în dicționar Python cu ajutorul metodei dict().
  • Afișați rezultatul.
    # import modulul
    import itertools

    # listă simplă cu număr impar de elemente
    plain_list = ['a', 'A', 'b', 'B', 'c', 'C', 'd']

    # transformarea în iterabil pentru a evita repetarea
    plain_list_iter = iter(plain_list)

    # transformarea listei simple în dicționar
    plain_list_dict_object = itertools.zip_longest(plain_list_iter, plain_list_iter, fillvalue=None)

    # conversia obiectului zip_longest în dicționar folosind `dict`
    plain_list_dict = dict(plain_list_dict_object)

    # afișarea dicționarului
    print(plain_list_dict)
    

Puteți defini orice valoare doriți pentru umplere. Experimentați cu diferite valori și rulați codul pentru a verifica dacă obțineți rezultatul dorit.

Concluzii

Sperăm că acest tutorial despre conversia listelor în dicționare v-a fost util. Ne revedem în următorul tutorial.

În continuare, veți învăța cum să aplatizați o listă în Python.

Spor la codat! 🙂

V-a plăcut acest articol? Atunci, ce ați zice să-l distribuiți și altora?