讨论

Python时区时段查找脚本

来自 Wikiprompt,自由的提示词百科全书

Fatih Kadir Akın

2026年10月29日

Python时区时段查找脚本 一个完整、独立的Python 3.9+脚本,使用zoneinfo查找公平的会议时间段,包含排序、轮换、夏令时检测、JSON输出和内置自测功能。

提示词内容收藏

🌐
#!/usr/bin/env python3 """时区会议时段查找器(Python 3.9+ 标准库:zoneinfo)。 给定参与者的 IANA 时区、工作日和工作时间(以及每个人愿意在上班前或下班后额外延长的时长), 在日期范围内查找会议时段,按公平性排序,并可选择轮换系列,以便同一组人不会每次都承担早班或晚班。 每个时段都会在参与者各自的本地时间(当天)进行评估,因此范围内的夏令时转换(欧洲和美国在不同周末切换) 会自动处理并报告。 每位参与者和会议的痛点:工作时间内为 0,工作时间前或后的弹性(“flex”)窗口内每小时为 2, 超出该范围、非工作日或阻塞时间内不可用。在轮换统计中,缺少可选参与者计为他们 3 个痛点。 用法: 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 team.csv 列:name, zone, work_start, work_end, days (Mon-Fri 或 Sun-Thu 或 Mon,Wed,Fri), flex_before, flex_after (小时,可选), required (yes/no,可选)。 work_end 早于 work_start 表示跨午夜的班次。 blocked.csv 列:name, date (参与者本地日期), start, end (空 = 全天), reason。 退出代码:0 = 找到时段,1 = 没有所有必需参与者都能参加的时段, 2 = 输入错误(未知时区、错误时间、缺失文件或列)。 """ [此处为原始推文中的完整 Python 源代码]

登录以查看完整提示词

继续使用:

登录即表示你同意我们的 使用条款 和 隐私政策

用法

此提示词专为 coding 设计。复制上方内容并粘贴到你常用的 AI 工具中。

为获得最佳效果,可将占位符(方括号或大写字母标示)替换为你的具体需求。

参考资料

分类:coding| prompts.chat| python| zoneinfo

讨论