Estructura de Datos en Python: Lógica de Programación #7

Estructura de Datos

Hola a todos. En este artículo, exploraremos cómo gestionar una lista de contactos utilizando diccionarios en Python. Este ejemplo práctico te ayudará a entender cómo manejar y manipular datos. Este es el ejercicio número 7 de nuestra serie semanal sobre lógica de programación en Python.

Los diccionarios en Python son estructuras de datos muy útiles para almacenar pares clave-valor. En este caso, usaremos diccionarios para crear una agenda de contactos, donde los nombres serán las claves y los números de teléfono serán los valores.

Definición de las Funciónes

Python

def add_contact(contact_list, name, phone):
    

Esta línea define una función llamada add_contact que toma tres parámetros: contact_list (la lista de contactos), name (el nombre del contacto) y phone (el número de teléfono del contacto).

Python

if not phone.isdigit():
    print(f"Warning: The phone number for {name} is invalid. It should contain only digits.")
    return contact_list
    

Utilizamos el método isdigit() para verificar si el número de teléfono contiene solo dígitos. Si no es así, se imprime una advertencia y la función devuelve la lista de contactos sin agregar el contacto inválido.

Python

contact_list[name] = phone
return contact_list
    

Si el número de teléfono es válido, se agrega el contacto a la lista y la función devuelve la lista de contactos actualizada.

Python

def remove_contact(contact_list, name):
    

Esta línea define una función llamada remove_contact que toma dos parámetros: contact_list y name.

Python

if name in contact_list:
    del contact_list[name]
return contact_list
    

La función verifica si el nombre del contacto existe en la lista. Si es así, elimina el contacto del diccionario y devuelve la lista de contactos actualizada.

Python

def show_contacts(contact_list):
    

Esta línea define una función llamada show_contacts que toma un parámetro: contact_list.

Python

for name, phone in contact_list.items():
    print(f"{name}: {phone}")
    

La función itera a través de todos los elementos en la lista de contactos y los imprime en el formato “nombre: teléfono”.

Python

contacts = {}
    

Se crea un diccionario vacío llamado contacts para almacenar los contactos.

Python

[add_contact(contacts, name, phone) for name, phone in [("Luke", "123456789"), ("Leia", "987654321"), ("Han", "456123789"), ("Chewbacca", "GRR GRRR GRRRRRR GR m"), ("Yoda", "987*654")]]

    

Esta es una lista de comprensión, una forma de crear listas. En este caso, estamos utilizando la lista de comprensión para ejecutar la función add_contact para cada par de name (nombre) y phone (teléfono) en una lista de tuplas. Normalmente, una lista de comprensión se usa para generar una lista de valores, pero aquí la usamos para ejecutar una función repetidamente.

Python

for name, phone in

    

Este es un bucle for que itera sobre cada tupla en la lista de contactos. Durante cada iteración, descomponemos la tupla en dos variables: name y phone. Esto significa que en cada iteración del bucle, name tendrá el valor del nombre del contacto y phone tendrá el valor del número de teléfono.

Python

[("Luke", "123456789"), ("Leia", "987654321"), ("Han", "456123789"), ("Chewbacca", "GRRR GRR GRRRRRR GR m"), ("Yoda", "987*654")]

    

Esta es una lista de tuplas, donde cada tupla contiene un par de valores: el nombre de un contacto y su número de teléfono. En este ejemplo, tenemos cinco tuplas, cada una representando un contacto diferente.

Python

contacts = remove_contact(contacts, "Luke")

    

Se llama a la función remove_contact para eliminar a “Luke” de la lista de contactos.

Python

show_contacts(contacts)

    

Finalmente, se llama a la función show_contacts para imprimir todos los contactos restantes en la lista.

Al ejecutar este código, el resultado será:

Python

Warning: The phone number for Chewbacca is invalid. It should contain only digits.
Warning: The phone number for Yoda is invalid. It should contain only digits.
Leia: 987654321
Han: 456123789

    

Este ejercicio nos ha permitido trabajar con diccionarios en Python para gestionar una lista de contactos. Es una excelente manera de practicar la manipulación de estructuras de datos y la creación de funciones en Python. Si quieres ver el código completo, puedes encontrarlo en mi repositorio de GitHub. No olvides suscribirte al newsletter para recibir más ejercicios y tutoriales.

Lógica de programación:

  1. Tabla de Multiplicar

  2. Detectar Palíndromos

  3. Encuentra el Número Más Grande

  4. Algoritmo de ordenamiento

  5. Contador de Palabras
  6. Calcular Promedio

¡Suscríbete a nuestro newsletter para recibir noticias y artículos cada semana o mes!

¡Mantente al día con las últimas novedades en marketing, desarrollo web y análisis de datos!

Dejar un comentario

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