Apreneu l'estructura de dades del diccionari Python - Part 3


En aquesta part 3 de la sèrie Python Data Structure, parlarem sobre què és un diccionari, com es diferencia d'una altra estructura de dades a Python, com crear, eliminar objectes de diccionari i mètodes d'objectes de diccionari.

  • El diccionari és una implementació integrada de \Python Data Structure, que és una col·lecció de parells \Clau: Valor.
  • El diccionari es crea amb claus amb clau i valor separats per punt i coma {Clau : Valor}.
  • Semblant a la llista, els objectes dels diccionaris són tipus de dades mutables, el que significa que els objectes es poden modificar un cop creat el diccionari.
  • La construcció de la implementació del diccionari en Python es coneix més generalment com a \Matriu associatiu.
  • En llista o tuples, podem accedir als elements fent referència a les seves posicions d'índex perquè els elements dins de la llista estan ordenats (és a dir, s'emmagatzemen en l'ordre en què es van crear). Els objectes del diccionari poden estar en qualsevol ordre, ja que s'accedeix als elements mitjançant la seva \Clau.
  • associada
  • Els diccionaris són molt útils quan hem d'emmagatzemar els objectes i referir-los pel seu nom.
  • L'objecte \clau del diccionari ha de ser un tipus únic i immutable.
  • L'objecte del diccionari \Clau pot ser valors de cadena, enters o flotants.
  • El diccionari \Valors pot ser de qualsevol tipus de dades.

Construeix un objecte de diccionari

L'objecte de diccionari es pot crear utilitzant claus amb punt i coma que separen la clau i el parell de valors \{Clau:valor} o el mètode constructor \dict().

Per demostrar-ho, crearé un diccionari que emmagatzemarà dades sobre l'equip de futbol i el seu XI jugant amb una posició com a clau i els noms dels jugadors com a valors.

Podeu utilitzar el mètode constructor dict() per construir un objecte de diccionari.

Accés a l'objecte Dictonary

S'accedeix als elements del diccionari mitjançant referències \clau en comptes de la indexació. És possible utilitzar l'indexació si tenim qualsevol tipus de dades de seqüència (cadena, llista, tuples, etc.) dins del diccionari.

Es pot accedir als elements mitjançant dic_object[\key].

Es generarà \KeyError si intenteu accedir als elements del diccionari amb indexació o si intenteu accedir a una \clau que no forma part del diccionari.

Modificar i suprimir l'objecte del diccionari

Podeu modificar l'element existent o afegir un element nou fent referència directament a la seva clau Dictionary_object[\key”] = valor. Això actualitzarà el valor si la clau està disponible, sinó afegir-hi un element nou al diccionari.

Podeu suprimir un valor determinat en funció de la seva clau o suprimir una clau o suprimir un objecte del diccionari de l'espai de noms mitjançant la paraula clau integrada \supr.

Podeu utilitzar la funció integrada \dir() per cercar els mètodes i els atributs disponibles per a l'objecte del diccionari.

clear() – Aquest mètode eliminarà tots els elements de l'objecte del diccionari. Aquest mètode no accepta cap argument.

Copy() – Retornarà una còpia superficial d'un objecte de diccionari. El mètode copy() no pren cap paràmetre com a argument.

Keys() – Aquest mètode retorna l'objecte de visualització per a les claus disponibles al diccionari com a objecte clau del diccionari. Aquest mètode no accepta cap argument.

Valors() – Aquest mètode retorna un objecte de vista per als valors de l'objecte del diccionari. Aquest mètode no pren cap argument.

Items() – Aquest mètode retorna un parell de tupla (clau, valor) de l'objecte del diccionari.

Setdefault() – Aquest mètode cerca una clau determinada en un diccionari. Si la clau no es troba al diccionari, s'afegirà al diccionari.
Pren 2 arguments dic.setdefault(clau,[,valor predeterminat]).

El valor predeterminat s'estableix en Cap si no s'especifica cap valor.

get() – Aquest mètode retorna el valor de la clau especificada si la clau està disponible en un diccionari.

Syntax dict.get(key[, value]) 

Aquest mètode pren 2 arguments. El primer és l'argument d'entrada que cercarà la clau donada al diccionari i retornarà el valor de la clau que es troba. El segon argument retornarà el valor si no es troba una clau. El valor de retorn predeterminat s'estableix en \Cap.

Update() – El mètode d'actualització afegeix elements al diccionari si la clau no es troba al diccionari. Si es troba la clau, aquesta s'actualitza amb el nou valor. El mètode d'actualització accepta un altre objecte de diccionari de k:v parell o un objecte iterable de k:v parell com un parell de tuples.

Eliminació/eliminació d'objectes de diccionari

Pop() – Aquest mètode elimina el valor basat en la clau com a entrada i retorna el valor eliminat.

Aquest mètode accepta dos paràmetres.

  1. Clau: la clau que s'ha de cercar a l'objecte del diccionari.
  2. Per defecte: retorna el valor que s'ha d'especificar si la clau no es troba al diccionari.

NOTA Si la clau no es troba al diccionari i si no especifiqueu el valor per defecte, es generarà \KeyError.

Popitem() – Elimina elements arbitraris de l'objecte del diccionari. No s'accepta cap argument i retorna \KeyError si es diu que el diccionari està buit.

Com la llista i les tuples, podem utilitzar una paraula clau del per eliminar els elements de l'objecte diccionari o eliminar l'objecte diccionari de l'espai de noms.

En aquest article heu vist què és el diccionari i com es diferencia d'altres estructures de dades a Python. També heu vist com crear, accedir, modificar i eliminar objectes del diccionari.

El cas d'ús òptim del diccionari és quan hem d'emmagatzemar les dades a partir d'un nom i referir-les pel seu nom. En el següent article, veurem un altre tipus d'estructura de dades integrada en Python \set/Frozenset. Fins aleshores podeu llegir més sobre els diccionaris aquí.