Cómo utilizar el diccionario de diccionarios de Python

How Use Python Dictionary Dictionaries



En la mayoría de los lenguajes de programación, se utiliza una matriz asociativa para almacenar datos mediante pares clave-valor. Los diccionarios se utilizan en Python para realizar la misma tarea. Las llaves ({}) se utilizan para declarar cualquier variable de diccionario. El diccionario contiene un valor de clave único como índice y cada clave representa un valor particular. Los terceros corchetes ([]) son para leer el valor de cualquier clave en particular. Existe otro tipo de datos en Python para almacenar varios datos que se llama Lista. La lista funciona como una matriz numérica y su índice comienza desde 0 y mantiene el orden. Pero los valores clave del diccionario contienen diferentes tipos de valores que no necesitan mantener ningún orden. Cuando uno o más diccionarios se declaran dentro de otro diccionario, se denomina diccionario anidado o diccionarios del diccionario. En este artículo se describe cómo puede declarar diccionarios anidados y acceder a los datos de ellos utilizando diferentes ejemplos.

Ejemplo 1: declarar diccionario anidado

Una variable de diccionario puede almacenar otro diccionario en un diccionario anidado. El siguiente ejemplo muestra cómo se puede declarar y acceder a un diccionario anidado usando Python. Aquí, ' cursos ’Es un diccionario anidado que contiene otro diccionario de tres elementos en cada clave. Próximo, por El bucle se utiliza para leer el valor de cada clave del diccionario anidado.







# Crea un diccionario anidado
cursos={ 'intento':{'clases':10, 'horas':2, 'tarifa':500},
'PHP':{'clases':30, 'horas':2, 'tarifa':1500},
'Angular':{'clases':10, 'horas':2, 'tarifa':1000}}

# Imprime las claves y valores del diccionario
porcursoencursos:
impresión(' orteNombre del curso:',curso)
impresión('Total de clases:',cursos[curso]['clases'])
impresión('Horas:',cursos[curso]['horas'])
impresión('Tarifa: $',cursos[curso]['tarifa'])

Producción:



Ejecute el script. La siguiente salida aparecerá después de ejecutar el script.







Ejemplo 2: insertar datos usando una clave específica en un diccionario anidado

Se pueden insertar nuevos datos o se pueden modificar los datos existentes en el diccionario definiendo una clave específica del diccionario. En este ejemplo se muestra cómo puede insertar nuevos valores en un diccionario anidado utilizando valores clave. Aquí, ' productos ' es un diccionario anidado de tres elementos que contiene otro diccionario. Se define una nueva clave para este diccionario para insertar nuevos elementos. A continuación, se asignan tres valores utilizando tres valores clave y se imprime el diccionario utilizando por círculo.

# Crea un diccionario anidado
productos= {'t121':{'nombre':'42' Sony TV', 'marca':'Sony', 'precio':600},
'c702':{'nombre':'Cámara 8989', 'marca':'Cañón', 'precio':400},
'm432':{'nombre':'Samsung Galaxy j10', 'marca':'Samsung', 'precio':200}}

# Definir clave para nueva entrada de diccionario
productos['m123'] = {}

# Agregar valores para una nueva entrada
productos['m123']['nombre'] = 'iPhone 10'
productos['m123']['marca'] = 'Manzana'
productos['m123']['precio'] = 800

# Imprime las claves y valores del diccionario después de la inserción
porporenproductos:
impresión(' orteNombre:',productos[por]['nombre'])
impresión('Marca:',productos[por]['marca'])
impresión('Precio: $',productos[por]['precio'])

Producción:



Ejecute el script. La siguiente salida aparecerá después de ejecutar el script.

Ejemplo 3: insertar un diccionario en el diccionario anidado

Este ejemplo muestra cómo se puede insertar un nuevo diccionario como un nuevo elemento para un diccionario anidado. Aquí, se asigna un nuevo diccionario como valor en una nueva clave para ' productos 'Diccionario.

# Crea un diccionario anidado
productos= {'t121':{'nombre':'42' Sony TV', 'marca':'Sony', 'precio':600},
'c702':{'nombre':'Cámara 8989', 'marca':'Cañón', 'precio':400}}

# Agregar nuevo diccionario
productos['f326'] = {'nombre':'Nevera', 'marca':'LG', 'precio':700}

# Imprime las claves y valores del diccionario después de la inserción
porporenproductos:
impresión('Nombre:',productos[por]['nombre'],', '
'Marca:',productos[por]['marca'], ', '
'Precio: $',productos[por]['precio'])

Producción:

Ejecute el script. La siguiente salida aparecerá después de ejecutar el script.

Ejemplo 4: eliminar datos basados ​​en la clave del diccionario anidado

Este ejemplo muestra cómo puede eliminar un valor de un diccionario anidado basado en una clave en particular. El valor de ' nombre 'Clave del segundo elemento de' productos 'Diccionario se elimina aquí. A continuación, los valores del diccionario se imprimen en función de las claves.

# Crea un diccionario anidado
productos= {'t121':{'nombre':'42' Sony TV', 'marca':'Sony', 'precio':600},
'c702':{'nombre':'Cámara 8989', 'marca':'Cañón', 'precio':400},
'a512':{'nombre':'C.A', 'marca':'General', 'precio':650}}

# Eliminar datos del diccionario anidado
delproductos['c702']['nombre']
impresión(productos['t121'])
impresión(productos['c702'])
impresión(productos['a512'])

Producción:

Ejecute el script. La siguiente salida aparecerá después de ejecutar el script. Sin valor para ' nombre Se imprime la clave para el segundo elemento.

Ejemplo 5: eliminar un diccionario de un diccionario anidado

Este ejemplo muestra la forma de eliminar una entrada de diccionario interno de un diccionario anidado en una declaración. En el diccionario anidado, cada clave contiene otro diccionario. La tercera clave del diccionario anidado se usa en el comando 'del' para eliminar el diccionario interno que está asignado con esa clave. Después de eliminar, el diccionario anidado se imprime usando por círculo.

# Crea un diccionario anidado
productos= {'t121':{'nombre':'42' Sony TV', 'marca':'Sony', 'precio':600},
'c702':{'nombre':'Cámara 8989', 'marca':'Cañón', 'precio':400},
'a512':{'nombre':'C.A', 'marca':'General', 'precio':650}}

# Eliminar un diccionario del diccionario anidado
delproductos['a512']

# Imprime las claves y valores del diccionario después de borrar
porporenproductos:
impresión('Nombre:',productos[por]['nombre'],', '
'Marca:',productos[por]['marca'], ', '
'Precio: $',productos[por]['precio'])

Producción:

Ejecute el script. La siguiente salida aparecerá después de ejecutar el script.

Ejemplo 6: eliminar los últimos datos insertados de un diccionario anidado

popitem () El método se utiliza para eliminar la última entrada de un diccionario. La última entrada del diccionario de 'productos' se elimina en este ejemplo utilizando popitem ().

# Crea un diccionario anidado
productos= {'t121':{'nombre':'42' Sony TV', 'marca':'Sony', 'precio':600},
'c702':{'nombre':'Cámara 8989', 'marca':'Cañón', 'precio':400}}

# Eliminar la última entrada del diccionario
productos.Bebo()

# Imprime las claves y valores del diccionario después de borrar
porporenproductos:
impresión('Nombre:',productos[por]['nombre'],', '
'Marca:',productos[por]['marca'], ', '
'Precio: $',productos[por]['precio'])

Producción:

Ejecute el script. La siguiente salida aparecerá después de ejecutar el script.

Ejemplo-7: Acceda a diccionarios anidados usando el método get ()

Los valores de todos los diccionarios anidados se imprimen utilizando un bucle o claves en los ejemplos anteriores. obtener() El método se puede utilizar en Python para leer los valores de cualquier diccionario. Cómo se pueden imprimir los valores del diccionario anidado usando obtener() El método se muestra en este ejemplo.

# Crea un diccionario anidado
productos= {'t121':{'nombre':'42' Sony TV', 'marca':'Sony', 'precio':600},
'c702':{'nombre':'Cámara 8989', 'marca':'Cañón', 'precio':400}}

# Imprime las claves y valores del diccionario después de borrar
porporenproductos:
impresión('Nombre:',productos[por].obtener('nombre'))
impresión('Marca',productos[por].obtener('marca'))

Producción:

Ejecute el script. La siguiente salida aparecerá después de ejecutar el script.

Conclusión

Los diferentes usos del diccionario anidado se muestran en este artículo usando ejemplos simples para ayudar a los usuarios de Python a trabajar con diccionarios anidados.