Converti dizionario in tuple in Python

Manav Narula 14 aprile 2021
  1. Usa la funzione items() per convertire un dizionario in una lista di tuple in Python
  2. Usa il cicli for per convertire un dizionario in una lista di tuple in Python
  3. Utilizzare il metodo di comprensione dell’lista per convertire un dizionario in una lista di tuple
  4. Usa la funzione zip() per convertire un dizionario in una lista di tuple
Converti dizionario in tuple in Python

In Python, abbiamo diverse raccolte disponibili e, a volte, potremmo aver bisogno di convertire una raccolta in un’altra secondo le nostre esigenze.

Un dizionario viene utilizzato per memorizzare le coppie chiave-valore in Python. Questo tutorial discuterà diversi metodi per memorizzare queste coppie chiave-valore come tuple in una lista.

Usa la funzione items() per convertire un dizionario in una lista di tuple in Python

La funzione items() restituisce un oggetto vista con le coppie chiave-valore del dizionario come tuple in una lista. Possiamo usarlo con la funzione list() per ottenere il risultato finale come una lista. Il codice seguente implementa questo.

d1 = {"x": 1, "y": 2, "z": 3}
l1 = list(d1.items())
print(l1)

Produzione:

[('x', 1), ('y', 2), ('z', 3)]

Notare che sotto Python 3.x, la funzione iteritems() può eseguire la stessa funzione.

Usa il cicli for per convertire un dizionario in una lista di tuple in Python

In questo metodo, iteriamo nel dizionario usando il cicli for. Usiamo i tasti per accedere agli elementi e creare tuple, che vengono aggiunte a una lista vuoto. Il codice seguente implementa questo.

d1 = {"x": 1, "y": 2, "z": 3}
l2 = []

for i in d1:
    tpl = (i, d1[i])
    l2.append(tpl)

print(l2)

Produzione:

[('x', 1), ('y', 2), ('z', 3)]

Utilizzare il metodo di comprensione dell’lista per convertire un dizionario in una lista di tuple

List Comprehension è un modo elegante per creare liste in una singola riga di codice. Per questo metodo useremo il cicli for e la funzione items() insieme come mostrato di seguito:

d1 = {"x": 1, "y": 2, "z": 3}
l3 = [(v, k) for v, k in d1.items()]
print(l3)

Produzione:

[('x', 1), ('y', 2), ('z', 3)]

Usa la funzione zip() per convertire un dizionario in una lista di tuple

La funzione zip() restituisce un oggetto di tipo zip unendo due oggetti iterabili e formando una tupla. Possiamo passare questo oggetto alla funzione list() per ottenere il risultato finale in una nuova lista.

d1 = {"x": 1, "y": 2, "z": 3}
l4 = list(zip(d1.keys(), d1.values()))
print(l4)

Produzione:

[('x', 1), ('y', 2), ('z', 3)]

Nel codice sopra, abbiamo usato le funzioni keys() e values() per ottenere l’lista di chiavi e valori dal dizionario, rispettivamente, e combinarli usando la funzione zip().

Autore: Manav Narula
Manav Narula avatar Manav Narula avatar

Manav is a IT Professional who has a lot of experience as a core developer in many live projects. He is an avid learner who enjoys learning new things and sharing his findings whenever possible.

LinkedIn

Articolo correlato - Python Dictionary