Aprenda la estructura de datos del diccionario de Python - Parte 3


En esta Parte 3 de la serie Estructura de datos de Python, discutiremos qué es un diccionario, en qué se diferencia de otras estructuras de datos en Python, cómo crear, eliminar objetos de diccionario y métodos de objetos de diccionario.

  • El diccionario es una implementación integrada de la "Estructura de datos de Python", que es una colección de pares "Clave: Valor".
  • El diccionario se crea con llaves con clave y valor separados por punto y coma {Clave: Valor}.
  • De manera similar a la lista, los objetos de los diccionarios son tipos de datos mutables, lo que significa que los objetos se pueden modificar una vez que se crea el diccionario.
  • La construcción de la implementación del diccionario en Python se conoce más generalmente como "matriz asociativa".
  • En listas o tuplas, podemos acceder a los elementos haciendo referencia a sus posiciones de índice porque los elementos dentro de la lista están ordenados (es decir, almacenados en el orden en que se crearon). Los objetos del diccionario pueden estar en cualquier orden, ya que se accede a los elementos utilizando su "Clave" asociada.
  • Los diccionarios son muy útiles cuando tenemos que almacenar los objetos y referirlos por su nombre.
  • El objeto "clave" del diccionario debe ser de un tipo único e inmutable.
  • El objeto "Clave" del diccionario puede ser una cadena, un entero o valores flotantes.
  • El diccionario "Valores" puede ser de cualquier tipo de datos.

Construir objeto de diccionario

El objeto de diccionario se puede crear usando llaves con punto y coma que separan el par clave y valor del método constructor “{Clave: valor}” o “dict()”.

Para demostrarlo, voy a crear un diccionario que almacenará datos sobre el equipo de fútbol y su jugador XI con una posición como clave y nombres de jugadores como valores.

Puede utilizar el método constructor dict() para construir un objeto de diccionario.

Acceder al objeto de diccionario

Se accede a los elementos del diccionario mediante referencias "clave" en lugar de indexar. Es posible utilizar la indexación si tenemos algún tipo de datos de secuencia (cadena, lista, tuplas, etc.) dentro del diccionario.

Se puede acceder a los elementos usando dic_object [“clave”].

Se generará "KeyError" si intenta acceder a elementos del diccionario con indexación o si intenta acceder a una "clave" que no es parte del diccionario.

Modificar y eliminar objeto de diccionario

Puede modificar el elemento existente o agregar un nuevo elemento haciendo referencia directamente a su clave Dictionary_object ["clave"] u003d valor. Esto actualizará el valor si la clave está disponible; de lo contrario, agregará un nuevo elemento al diccionario.

Puede eliminar un valor particular en función de su clave o eliminar una clave o eliminar un objeto de diccionario del espacio de nombres utilizando la palabra clave incorporada "del".

Puede utilizar la función "dir()" incorporada para buscar los métodos y atributos disponibles para el objeto de diccionario.

clear(): este método eliminará todos los elementos del objeto de diccionario. Este método no toma ningún argumento.

Copiar(): devolverá una copia superficial de un objeto de diccionario. El método copy() no toma ningún parámetro como argumento.

Keys(): este método devuelve el objeto de vista para las claves disponibles en el diccionario como objeto de clave de diccionario. Este método no toma ningún argumento.

Values(): este método devuelve un objeto de vista para los valores del objeto de diccionario. Este método no tiene argumentos.

Items(): este método devuelve un par de tuplas (clave, valor) del objeto de diccionario.

Setdefault(): este método busca una clave determinada en un diccionario. Si la clave no se encuentra en el diccionario, se agregará al diccionario.
Toma 2 argumentos dic.setdefault (clave, [, valor predeterminado]).

El valor predeterminado se establece en Ninguno si no se especifica ningún valor.

get(): este método devuelve el valor de la clave especificada si la clave está disponible en un diccionario.

Syntax dict.get(key[, value]) 

Este método toma 2 argumentos. Primero está el argumento de entrada que buscará la clave dada en el diccionario y devolverá el valor de la clave. El segundo argumento devolverá el valor si no se encuentra una clave. El valor de retorno predeterminado se establece en "Ninguno".

Actualizar(): el método de actualización agrega elementos al diccionario si la clave no está en el diccionario. Si se encuentra la clave, esa clave se actualiza con el nuevo valor. El método de actualización acepta otro objeto de diccionario de par k: v o un objeto iterable de par k: v como par de tuplas.

Eliminar/eliminar un objeto de diccionario

Pop(): este método elimina el valor basado en la clave como entrada y devuelve el valor eliminado.

Este método acepta dos parámetros.

  1. Clave: la clave que se buscará en el objeto de diccionario.
  2. Predeterminado: valor de retorno que se especificará si la clave no se encuentra en el diccionario.

NOTA Si la clave no se encuentra en el diccionario y no especifica el valor predeterminado, se generará “KeyError”.

Popitem(): elimina elementos arbitrarios del objeto de diccionario. No se acepta ningún argumento y devuelve "KeyError" si se dice que el diccionario está vacío.

Al igual que la lista y las tuplas, podemos usar una palabra clave del para eliminar los elementos del objeto de diccionario o eliminar el objeto de diccionario del espacio de nombres.

En este artículo, ha visto qué es el diccionario y en qué se diferencia de otras estructuras de datos en Python. También ha visto cómo crear, acceder, modificar y eliminar objetos de diccionario.

El caso de uso óptimo del diccionario es cuando tenemos que almacenar los datos basados en un nombre y referirlos por su nombre. En el próximo artículo, veremos otro tipo de estructura de datos incorporada en Python “set/Frozenset”. Hasta entonces puedes leer más sobre diccionarios aquí.