Ricerca nel sito web

Impara la struttura dei dati del dizionario Python - Parte 3


In questa Parte 3 della serie Python Data Structure, discuteremo cos'è un dizionario, come differisce da altre strutture dati in Python, come creare, eliminare oggetti dizionario e metodi degli oggetti dizionario.

  • Il dizionario è un'implementazione integrata di "Python Data Structure", che è una raccolta di coppie "Chiave: Valore".
  • Il dizionario viene creato utilizzando parentesi graffe con chiave e valore separati da punto e virgola {Chiave: Valore}.
  • Similmente all'elenco, gli oggetti dei dizionari sono di tipo dati mutabile, il che significa che gli oggetti possono essere modificati una volta creato il dizionario.
  • Il costrutto dell'implementazione del dizionario in Python è più generalmente noto come “array associativo”.
  • In list o tuple, possiamo accedere agli elementi facendo riferimento alle loro posizioni nell'indice perché gli elementi all'interno dell'elenco sono ordinati (ovvero archiviati nell'ordine in cui sono stati creati). Gli oggetti del dizionario possono essere in qualsiasi ordine poiché è possibile accedere agli elementi utilizzando la "Chiave" associata.
  • I dizionari sono molto utili quando dobbiamo archiviare gli oggetti e riferirli per nome.
  • L'oggetto "key" del dizionario deve essere di tipo univoco e immutabile.
  • L'oggetto "Chiave" del dizionario può essere una stringa, un numero intero o un valore mobile.
  • Il dizionario "Valori" può contenere qualsiasi tipo di dati.

Costruisci oggetto dizionario

L'oggetto Dizionario può essere creato utilizzando parentesi graffe con punto e virgola che separa la coppia chiave-valore “{Key:value}” o il costruttore “dict()” metodo.

Per dimostrarlo, creerò un dizionario che memorizzerà i dati sulla squadra di calcio e sul suo undici di gioco con una posizione come chiave e giocatore nomi come valori.

Puoi utilizzare il metodo di costruzione dict() per costruire un oggetto dizionario.

Accedi all'oggetto Dizionario

È possibile accedere agli elementi del dizionario tramite riferimenti "chiave" invece che mediante indicizzazione. È possibile utilizzare l'indicizzazione se nel dizionario è presente un tipo di dati di sequenza (stringa, lista, tuple, ecc.).

È possibile accedere agli elementi utilizzando dic_object[“key ”].

Verrà generato un messaggio di tipo "KeyError" se si tenta di accedere agli elementi del dizionario con l'indicizzazione o se si tenta di accedere a una "chiave" che non fa parte del dizionario.

Modifica ed elimina l'oggetto dizionario

Puoi modificare l'elemento esistente o aggiungere un nuovo elemento facendo direttamente riferimento alla sua chiave Dictionary_object[“key ”]=value. Ciò aggiornerà il valore se la chiave è disponibile altrimenti aggiungerà un nuovo elemento al dizionario.

Eliminare

Puoi eliminare un particolare valore in base alla sua chiave oppure eliminare una chiave o eliminare un oggetto dizionario dallo spazio dei nomi utilizzando la parola chiave incorporata "del".

Metodi del dizionario

Puoi utilizzare la funzione integrata “dir()” per cercare i metodi e gli attributi disponibili per l'oggetto dizionario.

clear() – Questo metodo rimuoverà tutti gli elementi dall'oggetto dizionario. Questo metodo non accetta alcun argomento.

Copy() – Restituirà una copia superficiale di un oggetto del dizionario. Il metodo copy() non accetta alcun parametro come argomento.

Keys() – Questo metodo restituisce l'oggetto vista per le chiavi disponibili nel dizionario come oggetto chiave del dizionario. Questo metodo non accetta alcun argomento.

Values() – Questo metodo restituisce un oggetto vista per i valori dell'oggetto dizionario. Questo metodo non richiede argomenti.

Items() – Questo metodo restituisce una coppia tupla(chiave,valore) dall'oggetto dizionario.

Setdefault() – Questo metodo cerca una determinata chiave in un dizionario. Se la chiave non viene trovata nel dizionario, verrà aggiunta al dizionario.
Sono necessari 2 argomenti dic.setdefault(chiave,[,valore predefinito]).

Il valore predefinito è impostato su Nessuno se non viene specificato alcun valore.

get() – Questo metodo restituisce il valore della chiave specificata se la chiave è disponibile in un dizionario.

Syntax dict.get(key[, value]) 

Questo metodo richiede 2 argomenti. Il primo è l'argomento di input che cercherà la chiave specificata nel dizionario e restituirà il valore della chiave trovata. Il secondo argomento restituirà il valore se non viene trovata una chiave. Il valore restituito predefinito è impostato su "Nessuno".

Update() – Il metodo Update aggiunge elementi al dizionario se la chiave non è nel dizionario. Se la chiave viene trovata, la chiave viene aggiornata con il nuovo valore. Il metodo Update accetta un altro oggetto dizionario di k: v coppia o un oggetto iterabile di k: v coppia come coppia di tuple.

Rimozione/eliminazione dell'oggetto dizionario

Pop() – Questo metodo rimuove il valore in base alla chiave come input e restituisce il valore rimosso.

Questo metodo accetta due parametri.

  1. Chiave: la chiave da cercare nell'oggetto dizionario.
  2. Default – Valore restituito da specificare se la chiave non viene trovata nel dizionario.

NOTA Se la chiave non viene trovata nel dizionario e se non si specifica il valore predefinito, verrà sollevato il messaggio "KeyError".

Popitem() – Rimuove un elemento arbitrario dall'oggetto dizionario. Nessun argomento viene accettato e restituisce "KeyError" se si dice che il dizionario è vuoto.

Come list e tuple, possiamo utilizzare una parola chiave del per rimuovere gli elementi nell'oggetto dizionario o rimuovere l'oggetto dizionario dallo spazio dei nomi.

Riepilogo

In questo articolo hai visto cos'è il dizionario e come differisce dalle altre strutture dati in Python. Hai anche visto come creare, accedere, modificare ed eliminare gli oggetti del dizionario.

Il caso d'uso ottimale del dizionario è quando dobbiamo memorizzare i dati in base a un nome e fare riferimento ad essi con il suo nome. Nel prossimo articolo vedremo un altro tipo di struttura dati integrata in Pythonset/Frozenset”. Fino ad allora puoi leggere ulteriori informazioni sui dizionari qui.