Skip to content

Solución reto #38 Python #1378

@grisales54

Description

@grisales54

`# Importación de librerías necesarias
import pandas as pd # Para manejo de datos y lectura de Excel
from datetime import datetime # Para manejo de fechas
from dateutil.relativedelta import relativedelta # Para calcular diferencias entre fechas

Ruta al archivo Excel que contiene las fechas de lanzamiento

path = "zelda_games_release_dates.xlsx"

def read_excel(path):
"""
Función que lee un archivo Excel y convierte las fechas a objetos datetime
Args:
path: Ruta al archivo Excel
Returns:
diccionario: Diccionario con nombres de juegos como claves y fechas como valores
"""
# Lee el archivo Excel y lo convierte en DataFrame
df = pd.read_excel(path)

# Crea un diccionario usando comprensión de diccionario
# i[0] es el nombre del juego, i[1] es la fecha en formato string
# Convierte cada fecha string a objeto datetime
diccionario = {
    i[0]: datetime.strptime(i[1], "%d/%m/%Y") for i in df.values.tolist()
}

return diccionario

Ejecuta la función para cargar los datos

datos = read_excel(path)

Solicita al usuario ingresar los nombres de los juegos a comparar

primer = input("Ingrese el juego de Zelda: ")
segundo = input("Ingrese el segundo juego de Zelda: ")

Calcula la diferencia absoluta entre las fechas usando relativedelta

relativedelta permite obtener años y días de diferencia

diferencia = abs(relativedelta(datos[primer], datos[segundo]))

Imprime el resultado mostrando años y días de diferencia

print(f"El tiempo que tardo fue {diferencia.years} años y {diferencia.days} días")`

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions