Saltar al contenido
🛠️ToolsShed

Calculadora de diferencia de fechas

Calcula el número exacto de días, semanas y meses entre dos fechas.

Acerca de esta herramienta

La Calculadora de Diferencia de Fechas es una herramienta simple pero potente para determinar el intervalo exacto entre dos fechas. Ya sea que esté realizando un seguimiento de cronogramas de proyectos, calculando edad, midiendo cuántos días faltan para un plazo o planificando eventos, esta herramienta le muestra instantáneamente el número de días, semanas y meses transcurridos. Comprender la duración precisa entre fechas es esencial para la gestión de proyectos, los hitos personales y la planificación cotidiana.

Usar la calculadora es sencillo: selecciona la fecha de inicio y la fecha de fin, y la herramienta calcula automáticamente la diferencia en días, semanas y meses. Tiene en cuenta los años bisiestos y las diferentes longitudes de los meses, garantizando precisión en cualquier rango de fechas. Esto la hace ideal para profesionales que administran horarios, estudiantes que rastrean plazos de tareas, viajeros que planifican itinerarios o cualquier persona que necesite aritmética de fechas confiable sin cálculos manuales.

Preguntas Frecuentes

Implementación de Código

from datetime import date

def date_difference(start: date, end: date) -> dict:
    """Calculate the difference between two dates in multiple units."""
    if end < start:
        start, end = end, start

    total_days = (end - start).days
    weeks = total_days // 7
    remaining_days = total_days % 7

    # Calendar months and years
    years = end.year - start.year
    months = end.month - start.month
    days = end.day - start.day
    if days < 0:
        months -= 1
        import calendar
        days += calendar.monthrange(end.year, end.month - 1 or 12)[1]
    if months < 0:
        years -= 1
        months += 12

    return {
        "years": years, "months": months, "days": days,
        "total_days": total_days, "total_weeks": total_days / 7,
        "whole_weeks": weeks, "remaining_days": remaining_days,
    }

# Example
d1, d2 = date(2020, 1, 15), date(2024, 6, 20)
diff = date_difference(d1, d2)
print(f"{diff['years']} years, {diff['months']} months, {diff['days']} days")
print(f"Total: {diff['total_days']} days / {diff['whole_weeks']} full weeks")

Comments & Feedback

Comments are powered by Giscus. Sign in with GitHub to leave a comment.