Converti elenco in dizionario in Python

Convertire un elenco in un dizionario in Python non è poi così difficile.

Diamo un’occhiata a diversi modi per convertire un elenco in un dizionario.

Introduzione

Prima di passare al tutorial, vediamo un esempio di conversione di un elenco in un dizionario. Avremo un elenco di tuple (ogni tupla è composta da due elementi) o solo un elenco di elementi. Prenderemo entrambi gli input e li convertiremo in dizionari.

Esempi:

Nell’esempio seguente, abbiamo preso un elenco di tuple e lo abbiamo convertito in un dizionario. Abbiamo preso il primo elemento di ogni tupla come chiave e il secondo elemento come valore per il dizionario.

Ingresso: list_one = [(‘a’, ‘A’), (‘b’, ‘B’), (‘c’, ‘C’)]

Output: {‘a’: ‘A’, ‘b’: ‘B’, ‘c’: ‘C’}

Nell’esempio seguente, abbiamo preso un elenco di elementi e lo abbiamo convertito in un dizionario con elementi alternativi come chiave e valore. Daremo null alla chiave se non è rimasto alcun elemento come chiave (se la lista ha un numero dispari di elementi).

Ingresso: list_one = [‘a’, ‘A’, ‘b’, ‘B’, ‘c’, ‘C’, ‘d’]

Output:{‘a’: ‘A’, ‘b’: ‘B’, ‘c’: ‘C’, ‘d’: Nessuno}

Abbiamo visto l’obiettivo del tutorial. E discuteremo entrambi gli esempi in modi diversi. Partiamo dal primo esempio.

Elenco delle tuple – Dizionario

Vediamo come convertire una lista di tuple in un dizionario. Puoi provare a scrivere il codice con l’aiuto dei seguenti passaggi.

  • Inizializza l’elenco di tuple con dati fittizi come indicato negli esempi precedenti (assicurati che ogni tupla nell’elenco abbia esattamente due elementi).
  • Passa l’elenco delle tuple al metodo dict e memorizza il risultato in una nuova variabile.
  • Ecco fatto, abbiamo convertito una lista di tuple in un dizionario con una sola riga di codice.
# list of tuples
list_of_tuples = [('a', 'A'), ('b', 'B'), ('c', 'C')]

# converting to dictionary
list_of_tuples_dict = dict(list_of_tuples)

# printing the result dict
print(list_of_tuples_dict)

È possibile testare l’output del programma di cui sopra eseguendolo. Otterrai il risultato come vediamo negli esempi.

Elenco – Dizionario

Abbiamo visto come convertire una lista di tuple in un dizionario ed è una cosa semplice in Python. In questa sezione vedremo come convertire un semplice elenco in un dizionario.

Vedere il secondo esempio dalla prima sezione del tutorial per ottenere maggiore chiarezza.

Segui i passaggi seguenti per scrivere il codice per il secondo esempio.

Abbiamo riempito il valore predefinito come None per l’elemento che non avrà alcun valore (un elenco contenente un numero dispari di elementi). Per questo, dobbiamo usare un metodo chiamato zip_longest dal modulo itertools.

  • Importa il modulo itertools e inizializza una lista con un numero dispari di elementi dati negli esempi.
  • Converti l’elenco in un iterabile per evitare la ripetizione di coppie chiave e valore nel metodo zip_longest.
  • Ora, passa l’iterabile al metodo zip_longest e fillvalue come None. Restituirà un oggetto zip.
    • Dobbiamo passare iterabile due volte poiché prende chiave e valore dai due iterabili. Nel nostro caso, sia le chiavi che i valori sono nello stesso iterabile. Quindi, dobbiamo passarlo due volte prima di fillvalue.
  • Converti l’oggetto nel dizionario Python usando il metodo dict.
  • Stampa il risultato.
# importing the module
import itertools

# plain list with odd number of elements
plain_list = ['a', 'A', 'b', 'B', 'c', 'C', 'd']

# converting it to iterable to avoid repetition
plain_list_iter = iter(plain_list)

# converting the plain_list to dict
plain_list_dict_object = itertools.zip_longest(plain_list_iter, plain_list_iter, fillvalue=None)

# convert the zip_longest object to dict using `dict`
plain_list_dict = dict(plain_list_dict_object)

# print it
print(plain_list_dict)

Puoi dare al valore di riempimento quello che vuoi. Prova cose diverse con esso. Ed esegui il codice per vedere se stiamo ottenendo l’output esatto come menzionato nell’esempio o meno.

Conclusione

Spero ti sia piaciuto convertire l’elenco in un dizionario. Incontriamoci nel prossimo tutorial.

Successivamente, scopri come appiattire l’elenco in Python.

Buon codice 🙂

Ti è piaciuto leggere l’articolo? Che ne dici di condividere con il mondo?