Dizionario comprensione in Python

Manav Narula 22 giugno 2021
Dizionario comprensione in Python

Un elenco è una raccolta ordinata di più elementi con un nome comune. È semplice creare e gestire elenchi in Python. Per renderlo più semplice, abbiamo il metodo di comprensione delle liste disponibile in Python. Questo metodo è molto più conciso, elegante e di solito è solo una singola riga di codice. Di solito implica l’uso del cicli for all’interno di parentesi quadre.

Il codice seguente mostra l’utilizzo di questo metodo per creare un semplice elenco di numeri interi.

lst = [i for i in range(1, 10)]
print(lst)

Produzione:

[1, 2, 3, 4, 5, 6, 7, 8, 9]

Un dizionario, d’altra parte, viene utilizzato per memorizzare le coppie chiave-valore. C’è anche il supporto in Python 2.7 e versioni successive per la comprensione del dizionario. Viene utilizzato in modo simile per creare dizionari in una singola riga di codice.

Per esempio,

d = {i: i * 5 for i in range(1, 5)}
print(d)

Produzione:

{1: 5, 2: 10, 3: 15, 4: 20}

Nel codice sopra, assegniamo numeri interi da 1 a 5 come chiavi del dizionario e assegniamo il prodotto della chiave e 5 come suo valore.

Sappiamo tutti che possiamo creare una lista di chiavi e valori di un dizionario. Utilizzando il metodo di comprensione del dizionario, possiamo facilmente creare un dizionario utilizzando gli elementi di una lista. È mostrato nell’esempio seguente.

keys = [1, 2, 3, 4, 5]
vals = ["Mark", "Jack", "Jake", "Sam", "Ash"]

d = {i: j for i, j in zip(keys, vals)}

print(d)

Produzione:

{1: "Mark", 2: "Jack", 3: "Jake", 4: "Sam", 5: "Ash"}

La funzione zip() nell’esempio sopra è usata per restituire un oggetto di tipo zip dopo aver combinato i due elenchi.

Vale la pena notare che ci sono anche altri modi per creare dizionari più velocemente. Ad esempio, possiamo usare la funzione fromkeys(). Questa funzione ci permette di creare un dizionario fornendo le chiavi da una lista. Lo svantaggio è che specifica lo stesso valore per tutte le chiavi.

Per esempio,

keys = [1, 2, 3, 4, 5]

d = dict.fromkeys(keys, "True")

print(d)

Produzione:

 {1: 'True', 2: 'True', 3: 'True', 4: 'True', 5: 'True'}
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