Skip to main content
Curso Python 3.5

Curso Python – tema 8 – Estructura de datos tipo diccionario

La estructura de datos de tipo diccionario permite una forma mucho más rápida de acceder a un elemento a través de su clave

Hasta el momento hemos visto dos estructuras fundamentales de datos en Python: las listas y las tuplas. Ahora vamos a explicar la tercera de ellas, los diccionarios.

La estructura de datos de tipo diccionario utiliza una clave para acceder a un valor. El subíndice utilizado puede ser cualquier tipo de datos inmutables, es decir, entero, float, string o tupla.

Las listas y los diccionarios son tipos de dato mutables, es decir, que pueden cambiar.

Un diccionario se crearía por asignación encerrando los valores entre llaves {}, un ejemplo

 

Ejemplo

Definir un diccionario que almacene los nombres de varios países como clave y la cantidad de habitantes como valor. Implementar una función para mostrar cada clave y valor.

 

En este ejemplo nos valemos de un bucle for para imprimir cada uno de los valores a través de la key en el diccionario.

Los métodos de obtención de valores son iguales que en las listas o tuplas, con la diferencia de que debemos seleccionar el valor por medio de la key o clave.

También podemos comprobar si una key existe en un diccionario utilizando la función keys(), para el caso anterior sería

 

De esta forma podríamos comprobar si una key existe.

Con la función copy() podemos copiar nuestro diccionario en otra variable

O eliminar el contenido de un diccionario con la función clear()

 

También podemos obtener los valores de un diccionario utilizando iteritems()

 

De esta forma podríamos ver la clave y el valor de cada elemento de forma iterada.

También vemos una nueva forma de utilizar la función print, podemos sustituir el valor %s por un valor string para poder realizar el bucle al imprimir el diccionario.

Esto os será muy útil también para poder resolver problemas con un código limpio.

 

Problemas propuestos

Ejercicio 1

Realizar un programa que permita crear un diccionario inglés / castellano. La clave es la palabra en inglés y el valor es la palabra en castellano. Crear funciones para cargar el diccionario, listar el diccionario. Crear una tercera función que solicite la carga por teclado de una palabra en inglés, mostrar después el valor en castellano si este existe.

Ver

 

Ejercicio 2

Crear un diccionario que defina como clave el número de dni de una persona y como valor un string con el nombre. Cargar los datos de 4 personas, listar el diccionario completo y realizar una tercera función para consultar el nombre de la persona introduciendo su dni.

Ver

 

Ejercicio 3

Realizar un programa que permita cargar un código de producto como clave en un diccionario. Guardar para esta clave el nombre del producto, el precio y el total disponible en stock. Después de ingresar un producto, preguntar si se desea cargar otro, el límite de productos lo dispondrá el usuario. Mostrar el listado de productos, una tercera para consultar un producto mediante su clave y otra para mostrar el listado de productos con stock 0.

Ver

 

Ejercicio 4

Realizar un programa de una agenda. En el diccionario la clave sería la fecha. Para cada actividad ingresar la hora y el nombre de dicha actividad y permitir la introducción de varias actividades para cada fecha. Implementar funciones para cargar datos, listar la agenda al completo y consultar una fecha.

Ver

 

Ejercicio 5

Desarrollar un programa que permita almacenar los datos de n alumnos. Definir un diccionario cuya clave será el número de alumno en el centro. Como valor almacenar una lista con el nombre, la materia a la que está apuntado y la nota obtenida en dicha materia. Un alumno puede estar apuntado a diferentes materias. Implementar funciones para cargar los datos de los alumnos, listar todos los alumnos y consultar un alumno a través de su id.

Ver

 

Además tenéis la lista completa de ejercicios en nuestro repositorio en github.

Con esto acabamos el octavo capítulo de nuestro curso de python 3.5. Si tienen cualquier duda relacionada con el contenido explicada en este capítulo, pueden exponerla en sus comentarios y le ayudaremos a resolverla lo antes posible. Nos vemos en el siguiente capítulo con porciones e índices negativos.

<- Anterior Volver al índice Siguiente ->

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *