Discusión

Script de Búsqueda de Franjas Horarias por Zona Horaria en Python

De Wikiprompt, la enciclopedia libre de prompts

Fatih Kadir Akın

29 oct 2026

Script de Búsqueda de Franjas Horarias por Zona Horaria en Python Un script completo y autónomo en Python 3.9+ que utiliza zoneinfo para encontrar horarios de reunión justos, con clasificación, rotación, detección de horario de verano, salida JSON y una autoprueba integrada.

Contenido del PromptGuardar

🌐
#!/usr/bin/env python3 """Buscador de franjas horarias para reuniones (biblioteca estándar de Python 3.9+: zoneinfo). Dados participantes con zonas horarias IANA, días y horas laborables (además de cuánto está dispuesto cada uno a estirar antes o después del trabajo), encuentra franjas para reuniones en un rango de fechas, las clasifica por equidad y puede elegir una serie rotatoria para que las mismas personas no tengan que madrugar o trasnochar cada vez. Cada franja se evalúa en la hora local de cada participante en esa fecha, por lo que los cambios de horario de verano dentro del rango (Europa y EE. UU. cambian en fines de semana diferentes) se manejan automáticamente y se informan. Puntos de dolor por participante y reunión: 0 dentro del horario laboral, 2 por hora dentro de la ventana de "flexibilidad" antes o después del trabajo, no disponible más allá de eso, en días no laborables o durante tiempo bloqueado. La ausencia de un participante opcional cuenta como 3 puntos de dolor para ellos en el recuento de rotación. Uso: python3 slot_finder.py --team team.csv --start 2026-10-26 --end 2026-11-06 [--duration 60] [--step 30] [--blocked blocked.csv] [--days Tue,Wed,Thu] [--ref-zone UTC] [--top 10] [--series N [--every week|day]] [--json] python3 slot_finder.py --self-test Columnas de team.csv: name, zone, work_start, work_end, days (Mon-Fri o Sun-Thu o Mon,Wed,Fri), flex_before, flex_after (horas, opcional), required (yes/no, opcional). work_end anterior a work_start significa un turno que pasa de medianoche. Columnas de blocked.csv: name, date (fecha local del participante), start, end (vacío = todo el día), reason. Códigos de salida: 0 = franjas encontradas, 1 = sin franja donde todos los participantes requeridos puedan asistir, 2 = entrada incorrecta (zona horaria desconocida, hora incorrecta, archivo o columna faltante). """ [Código fuente completo de Python aquí como en el tweet original]

Iniciá sesión para ver el prompt completo

Continuar con:

Al iniciar sesión, aceptás nuestros Términos de uso y Política de privacidad

Uso

Este prompt está diseñado para usarse con coding. Copiá el contenido de arriba y pegalo en tu herramienta de IA preferida.

Para mejores resultados, personalizá los marcadores (indicados con corchetes o mayúsculas) con tus requisitos específicos.

Referencias

Categorías:coding| prompts.chat| python| zoneinfo

Discusión