python-diccionarios

Qué són y como usar los Diccionarios en Python

Un diccionario es una colección no ordenada de pares clave-valor. Las claves son únicas e inmutables, mientras que los valores pueden ser de cualquier tipo y pueden ser modificados.

Características de los diccionarios:

  • Claves únicas: Cada clave en un diccionario es única, lo que significa que no puede haber claves duplicadas.
  • Mutabilidad de valores: Los valores de un diccionario pueden ser modificados después de la creación.
  • Desordenados: Aunque los diccionarios mantienen el orden de inserción a partir de Python 3.7, no se debe confiar en el orden ya que puede variar en diferentes versiones.

Más información sobre qué es un diccionario leer más ⯈

Creación de un diccionario

Los diccionarios en Python se definen utilizando llaves {} y los pares clave-valor se separan por dos puntos :. Por ejemplo, la sintaxies sería así,

mi_diccionario = {
    "clave1": valor1,
    "clave2": valor2,
    "clave3": valor3
}

Donde “clave1”, “clave2” y “clave3” son las claves que se utilizarán para acceder a los valores correspondientes.

Por ejemplo, asi.

mi_diccionario = {"nombre": "Juan", "altura": 30, "profesion": "Ingeniero"}

En este ejemplo, mi_diccionario es un diccionario con tres pares clave-valor: “nombre” con el valor “Juan”, “edad” con el valor 30, y “profesion” con el valor “Ingeniero”.

Operaciones con Diccionarios

Acceso a elementos

Para acceder a los valores de un diccionario, se utiliza la clave correspondiente de la siguiente manera:

print(mi_diccionario["nombre"])  # Resultado: Juan
print(mi_diccionario["edad"])  # Resultado: 30

Modificación de elementos

Para modificar un diccionario, simplemente se asigna un nuevo valor a una clave existente o se agrega una nueva clave-valor de la siguiente manera:

mi_diccionario["clave1"] = nuevo_valor
mi_diccionario["nueva_clave"] = nuevo_valor

Agregar elementos

Para agregar un nuevo par clave-valor a un diccionario en Python, se puede utilizar la sintaxis mi_diccionario["nueva_clave"] = nuevo_valor.

mi_diccionario["ciudad"] = "Madrid"  # Agrega una nueva clave-valor

Ten en cuenta que si la clave ya existe en el diccionario, el valor asociado se sobre escribirá con el nuevo valor proporcionado, como hemos visto en el apartado anterior.

Verificar pertenencia de claves

Para verificar si una clave está presente en un diccionario, se puede utilizar la expresión in. Esta expresión devuelve True si la clave está presente en el diccionario y False si no lo está.

if "nombre" in mi_diccionario:
    print("La clave 'nombre' está presente en el diccionario.")

Obtener claves y valores

El método items() retorna una vista de los pares clave-valor del diccionario en forma de tuplas.

mi_diccionario = {"nombre": "Juan", "edad": 30, "ciudad": "Madrid"}
vista_items = mi_diccionario.items()  # Retorna una vista de los pares clave-valor
print(vista_items)  # Resultado: dict_items([('nombre', 'Juan'), ('edad', 30), ('ciudad', 'Madrid')])

Por otro lado, también disponemos de los métodos keys() devuelve una lista de todas las claves en el diccionario, y el método values() que devuelve una lista de todos los valores.

claves = mi_diccionario.keys()  # Devuelve una lista de las claves
valores = mi_diccionario.values()  # Devuelve una lista de los valores

Copia superficial del diccionario

El método copy() retorna una copia superficial del diccionario. Esto significa que se crea una nueva instancia de diccionario que contiene los mismos pares clave-valor que el diccionario original.

mi_diccionario = {"nombre": "Juan", "edad": 30, "ciudad": "Madrid"}
copia_diccionario = mi_diccionario.copy()  # Crea una copia superficial del diccionario

print(copia_diccionario)  # Resultado: {"nombre": "Juan", "edad": 30, "ciudad": "Madrid"}

Ojito que la copia es superficial. Si los valores del diccionario son referencias, los valores de la copia apuntarán a los mismos objetos.

Eliminar elementos

Hay varias formas de eliminar elementos de un diccionario en Python. Se puede utilizar la declaración del seguida del nombre de la clave para eliminar la clave y su valor correspondiente.

Alternativamente, el método pop() también puede ser utilizado para eliminar una clave específica y devolver su valor.

del mi_diccionario["profesion"]  # Elimina una clave y su valor
valor_eliminado = mi_diccionario.pop("edad")  # Elimina y devuelve el valor de una clave

Eliminar todos los elementos del diccionario

El método clear() se utiliza para eliminar todos los elementos del diccionario, dejándolo vacío.

mi_diccionario = {"nombre": "Juan", "edad": 30, "ciudad": "Madrid"}
mi_diccionario.clear()  # Elimina todos los elementos del diccionario
print(mi_diccionario)  # Resultado: {}