Dizionario Python

Dizionario (Dictionary)

Il dizionario è un insieme non ordinato, mutabile e indiziato. In Python, il dizionario è scritto tra parentesi graffe e ha chiavi e valori.

Esempio

Creare e stampare il dizionario:

thisdict =	{
  "brand": "Porsche",
  "model": "911",
  "year": 1963
}
print(thisdict)

Eseguire l'istanza

Accesso agli elementi

È possibile accedere agli elementi del dizionario utilizzando il nome della chiave tra parentesi quadre:

Esempio

Ottenere il valore della chiave "model":

x = thisdict["model"]

Eseguire l'istanza

C'è anche un altro nome get() Il metodo ti darà lo stesso risultato:

Esempio

Ottenere il valore della chiave "model":

x = thisdict.get("model")

Eseguire l'istanza

Modifica del valore

È possibile modificare il valore di un elemento specifico utilizzando il nome della chiave di riferimento:

Esempio

Cambiare "year" in 2019:

thisdict =	{
  "brand": "Porsche",
  "model": "911",
  "year": 1963
}
thisdict["year"] = 2019

Eseguire l'istanza

Scansione del dizionario

È possibile utilizzare for Scansione del dizionario.

Quando si esegue la scansione del dizionario, il valore restituito è la chiave del dizionario, ma ci sono anche metodi per restituire i valori.

Esempio

Stampare singolarmente tutti i nomi delle chiavi nel dizionario:

for x in thisdict:
  print(x)

Eseguire l'istanza

Esempio

Stampare singolarmente tutti i valori nel dizionario:

for x in thisdict:
  print(thisdict[x])

Eseguire l'istanza

Esempio

È possibile utilizzare values() La funzione restituisce i valori del dizionario:

for x in thisdict.values():
  print(x)

Eseguire l'istanza

Esempio

Eseguire la scansione di chiavi e valori utilizzando la funzione items():

for x, y in thisdict.items():
  print(x, y)

Eseguire l'istanza

Controllare l'esistenza della chiave

Per determinare se esiste una chiave specificata nel dizionario, utilizzare: in Parola chiave:

Esempio

Controllare se esiste "model" nel dizionario:

thisdict =	{
  "brand": "Porsche",
  "model": "911",
  "year": 1963
}
if "model" in thisdict:
  print("Sì, 'model' è una delle chiavi nel dizionario thisdict")

Eseguire l'istanza

Lunghezza del dizionario

Per determinare il numero di elementi (paia chiave-valore) nel dizionario, utilizzare: len() Metodo.

Esempio

Stampare il numero di elementi nel dizionario:

print(len(thisdict))

Eseguire l'istanza

Aggiunta dell'elemento

Aggiungendo una nuova chiave di indice e assegnandole un valore, è possibile aggiungere un elemento al dizionario:

Esempio

thisdict =	{
  "brand": "Porsche",
  "model": "911",
  "year": 1963
}
thisdict["color"] = "red"
print(thisdict)

Eseguire l'istanza

Eliminazione dell'elemento

Ci sono diversi metodi per eliminare un elemento da un dizionario:

Esempio

Il metodo pop() elimina l'elemento con il nome chiave specificato:

thisdict =	{
  "brand": "Porsche",
  "model": "911",
  "year": 1963
}
thisdict.pop("model")
print(thisdict)

Eseguire l'istanza

Esempio

popitem() Metodo per eliminare l'ultimo elemento inserito (nelle versioni precedenti alla 3.7, eliminare un elemento casuale):

thisdict =	{
  "brand": "Porsche",
  "model": "911",
  "year": 1963
}
thisdict.popitem()
print(thisdict)

Eseguire l'istanza

Esempio

del thisdict["model"] thisdict.popitem()

thisdict =	{
  "brand": "Porsche",
  "model": "911",
  "year": 1963
}
La parola chiave elimina l'elemento con il nome chiave specificato:
print(thisdict)

Eseguire l'istanza

Esempio

del thisdict["model"] del

thisdict =	{
  "brand": "Porsche",
  "model": "911",
  "year": 1963
}
La parola chiave può anche eliminare completamente il dizionario:
del thisdict

Eseguire l'istanza

Esempio

clear() print(thisdict) #this 会导致错误,因为 "thisdict" 不再存在。

thisdict =	{
  "brand": "Porsche",
  "model": "911",
  "year": 1963
}
La parola chiave svuota il dizionario:
print(thisdict)

Eseguire l'istanza

thisdict.clear()

Non puoi copiare il dizionario digitando dict2 = dict1 Per copiare il dizionario, perché:dict2 è solo una copia dict1 Il riferimento, mentre dict1 Le modifiche apportate saranno automaticamente riflettute in dict2 in.

Ci sono alcuni metodi per fare la copia, uno è utilizzare il metodo integrato del dizionario copy()

Esempio

Usa copy() Il metodo per copiare il dizionario:

thisdict =	{
  "brand": "Porsche",
  "model": "911",
  "year": 1963
}
mydict = thisdict.copy()
print(mydict)

Eseguire l'istanza

Un altro metodo per creare una copia è utilizzare il metodo integrato dict()

Esempio

Usa dict() Il metodo crea una copia del dizionario:

thisdict =	{
  "brand": "Porsche",
  "model": "911",
  "year": 1963
}
mydict = dict(thisdict)
print(mydict)

Eseguire l'istanza

Dizionario annesso

Un dizionario può anche contenere molti dizionari, questo si chiama dizionario嵌套.

Esempio

Crea un dizionario che contiene tre dizionari:

myfamily = {
  "child1" : {
    "name" : "Phoebe Adele",
    "year" : 2002
  },
  "child2" : {
    "name" : "Jennifer Katharine",
    "year" : 1996
  },
  "child3" : {
    "name" : "Rory John",
    "year" : 1999
  }
}

Eseguire l'istanza

O se desideri incapsulare tre dizionari già esistenti come dizionari:

Esempio

Crea tre dizionari e poi crea un dizionario che contiene gli altri tre dizionari:

child1 = {
  "name" : "Phoebe Adele",
  "year" : 2002
}
child2 = {
  "name" : "Jennifer Katharine",
  "year" : 1996
}
child3 = {
  "name" : "Rory John",
  "year" : 1999
}
myfamily = {
  "child1" : child1,
  "child2" : child2,
  "child3" : child3
}

Eseguire l'istanza

Il costruttore dict()

Puoi anche usare dict() Il costruttore crea un nuovo dizionario:

Esempio

thisdict = dict(brand="Porsche", model="911", year=1963)
# Attenzione, la parola chiave non è una letterale di stringa
# Attenzione, è stato utilizzato l'uguale invece del due punti per l'assegnazione
print(thisdict)

Eseguire l'istanza

Metodi delle mappe

Python fornisce un insieme di metodi nativi che possono essere utilizzati sulle mappe.

Metodo Descrizione
clear() Eliminare tutti gli elementi dalla mappa
copy() Restituire una copia della mappa
fromkeys() Restituire la mappa con la chiave e il valore specificati
get() Restituire il valore specificato per la chiave specificata
items() Restituire un elenco di tuple che contengono ogni coppia di chiave valore
keys() Restituire un elenco che contiene le chiavi della mappa
pop() Eliminare l'elemento con la chiave specificata
popitem() Eliminare l'ultimo elemento chiave valore inserito
setdefault() Restituire il valore specificato per la chiave specificata. Se la chiave non esiste, inserire una chiave con il valore specificato.
update() Aggiornare la mappa utilizzando la coppia di chiave valore specificata
values() Restituire l'elenco di tutti i valori nella mappa