Python Convert List to Dictionary: A Complete Guide

oct. 17, 2021
admin

Puteți converti o listă Python într-un dicționar folosind o înțelegere de dicționar, dict.fromkeys(), sau metoda zip(). Toate cele trei metode creează un nou dicționar. Ele nu modifică lista existentă.

Listele și dicționarele Python sunt două structuri utilizate pentru a stoca date. Dar ce se întâmplă dacă doriți să transformați o listă într-un dicționar? Este posibil să doriți să faceți acest lucru dacă doriți să atribuiți o etichetă unică fiecărei valori stocate. Acest lucru este posibil numai într-un dicționar.

Există câteva tehnici și funcții încorporate pe care le puteți utiliza în Python pentru a converti o listă într-un dicționar. Acest tutorial de programare va discuta, cu referire la exemple, cum să convertiți o listă într-un dicționar în Python.

Liste și dicționare Python

Listele și dicționarele sunt exemple de colecții Python. Acestea vă permit să stocați mai multe valori similare împreună într-o singură structură de date.

forma-submission
Find Your Bootcamp Match
  • Career Karma vă potrivește cu cele mai bune bootcamps de tehnologie
  • Obțineți burse și cursuri de pregătire exclusive

Structura de date listă vă permite să stocați datele într-o anumită ordine. Iată un exemplu de listă Python:

takeout_prices = 

Lista noastră numită takeout_prices conține patru valori.

Dicționarele, pe de altă parte, nu sunt ordonate și nu pot stoca mai multe valori duplicate.

Iată un exemplu de dicționar Python:

takeout_prices = {'single_chips': 2.50,'large_chips': 2.75,'single_fish': 4.50,'large_fish': 5.00}

Dicționarele sunt utile dacă doriți să asociați etichete cu fiecare valoare. Listele sunt mai bune dacă stocați date similare, cum ar fi o listă de prețuri sau nume, unde nu puteți eticheta fiecare valoare.

Python Convert List to Dictionary

Puteți converti o listă Python într-un dicționar folosind metoda dict.fromkeys(), o înțelegere a dicționarului sau metoda zip(). Metoda zip() este utilă dacă doriți să uniți două liste într-un dicționar.

Să rezumăm rapid aceste metode:

  • dict.fromkeys(): Folosită pentru a crea un dicționar dintr-o listă. Se poate seta opțional o valoare implicită pentru toate cheile. Nu puteți seta valori individuale pentru fiecare element din dicționar.
  • Comprehensiunea dicționarului: Creează un nou dicționar dintr-o listă existentă. Puteți specifica valori diferite pentru fiecare cheie din dicționar. Înțelegerile de dicționare sunt similare cu înțelegerile de liste Python în structură.
  • zip(): Convertește două sau mai multe liste într-o listă de tupluri. Puteți folosi metoda dict() pentru a converti lista de tuple într-un dicționar.

Vom folosi fiecare dintre cele trei metode de mai sus pentru a demonstra cum putem converti o listă într-un dicționar.

Python Convert List to Dictionary: dict.fromkeys()

Să spunem că avem o listă de fructe pe care dorim să o transformăm într-un dicționar. Valoarea atribuită fiecărui fruct ar trebui să fie În stoc:

fruits = 

Am putea crea acest dicționar folosind metoda dict.fromkeys(). Această metodă acceptă o listă de chei pe care doriți să le transformați într-un dicționar. Opțional, puteți specifica o valoare pe care doriți să o atribuiți fiecărei chei.

Puteți specifica doar o singură valoare care să fie atribuită fiecărei chei. Nu puteți spune că o cheie ar trebui să aibă o valoare și o altă cheie ar trebui să aibă o valoare diferită.

Să transformăm lista noastră de fructe într-un dicționar:

fruits = fruit_dictionary = dict.fromkeys(fruits, "In stock")print(fruit_dictionary)

Codul nostru returnează obiectele din această listă într-un obiect dicționar:

{'Apple': 'In stock', 'Pear': 'In stock', 'Peach': 'In stock', 'Banana': 'In stock'}

În primul rând declarăm o variabilă Python numită fructe care stochează numele cheilor pe care dorim să le folosim în dicționarul nostru.

Utilizăm dict.fromkeys() pentru a crea un dicționar care utilizează numele cheilor pe care le-am stocat în matricea fructe. Această metodă atribuie valoarea fiecărei chei pentru a fi În stoc. În cele din urmă, tipărim noul dicționar pe consolă.

Dacă nu am fi specificat valoarea În stoc în codul nostru, valoarea implicită pentru cheile din dicționarul nostru ar fi None.

Convert List to Dictionary Python: Comprehensiunea dicționarului

De asemenea, putem folosi o tehnică numită comprehensiunea dicționarului pentru a converti o listă Python într-un dicționar folosind aceleași valori.

O comprehensiune de dicționar este similară cu o comprehensiune de listă în sensul că ambele metode creează o nouă valoare a tipurilor lor de date respective. Înțelegerile de dicționar folosesc paranteze ascuțite ({}), în timp ce înțelegerile de listă folosesc paranteze pătrate ().

Să convertim lista noastră de fructe într-un dicționar folosind înțelegerea de dicționar:

fruits = fruit_dictionary = { fruit : "In stock" for fruit in fruits }print(fruit_dictionary)

Codul nostru returnează:

{'Apple': 'In stock', 'Pear': 'In stock', 'Peach': 'In stock', 'Banana': 'In stock'}

În primul rând, am declarat o listă numită fructe care a stocat numele pe care am vrut să le mutăm într-un dicționar.

Apoi, am folosit înțelegerea de dicționar pentru a parcurge fiecare element din lista de fructe. Adăugăm un element în noul nostru dicționar pentru fiecare fruct din lista noastră. Valoarea pe care am atribuit-o fiecărui fruct a fost În stoc. În cele din urmă, am tipărit noul nostru dicționar pe consolă.

Python Convert List to Dictionary: zip()

În ultimul nostru exemplu, am convertit o singură listă într-un dicționar și am atribuit o valoare implicită pentru fiecare element din dicționar. Cu toate acestea, este posibil să convertim două liste într-un dicționar.

Pentru a face acest lucru, putem folosi funcția Python zip(). Această funcție ne permite să unim două liste. Putem folosi o listă ca chei pentru dicționar și cealaltă ca valori.

Să presupunem că avem două liste: una care conține o listă de fructe, iar cealaltă care conține prețul pentru o bucată individuală de fruct. Dorim să creăm un singur dicționar care să stocheze numele unui fruct, alături de prețul acestuia. Putem folosi următorul cod pentru a îndeplini această sarcină:

fruits = prices = fruit_dictionary = dict(zip(fruits, prices))print(fruit_dictionary)

Codul nostru returnează:

{'Apple': 0.35, 'Pear': 0.4, 'Peach': 0.4, 'Banana': 0.28}

În primul rând, am specificat două liste: o listă de fructe și o listă de prețuri. Apoi, am folosit funcția zip() pentru a unifica cele două liste. Funcția zip() returnează o listă de tupluri fuzionate. Deoarece dorim un dicționar, am folosit dict() pentru a converti tuplurile noastre într-un dicționar.

În continuare, am imprimat conținutul noului nostru dicționar în consolă.

Concluzie

Pentru a converti o listă într-un dicționar folosind aceleași valori, puteți folosi metoda dict.fromkeys(). Pentru a converti două liste într-un dicționar, puteți utiliza funcția Python zip(). Înțelegerea dicționarului vă permite să creați un nou dicționar pe baza valorilor unei liste.

În acest tutorial, am folosit exemple pentru a demonstra cum să folosim trei abordări pentru a converti o listă într-un dicționar în Python. Acum sunteți gata să începeți să convertiți listele Python în dicționare ca un programator profesionist!

.

Lasă un răspuns

Adresa ta de email nu va fi publicată.