You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何使用Python判断日期是否在指定范围并计算梦幻橄榄球比赛周数

优化实现方案

核心逻辑利用比赛周固定周期规则,仅需配置少量赛季参数即可适配任意赛季,无需逐周手动录入起止时间,和你原有代码的返回结果完全兼容。

import datetime

# 仅需每年赛季更新时修改这三个配置参数即可
SEASON_WEEK1_START = datetime.date(2021, 9, 9)  # 赛季首周开始日期
SEASON_WEEK1_END = datetime.date(2021, 9, 13)   # 赛季首周结束日期(适配首周可能不是完整7天的情况)
SEASON_TOTAL_WEEKS = 16  # 赛季总比赛周数

def get_current_week():
    current_date = datetime.datetime.now().date()
    # 赛季未开始
    if current_date < SEASON_WEEK1_START:
        return 0
    # 匹配首周范围
    if SEASON_WEEK1_START <= current_date <= SEASON_WEEK1_END:
        return 1
    # 从第二周开始每7天为一个完整比赛周,自动计算周数
    delta_days = (current_date - SEASON_WEEK1_END).days
    current_week = delta_days // 7 + 2
    return min(current_week, SEASON_TOTAL_WEEKS)

方案优势

  • 完全适配梦幻橄榄球比赛周规则:首周之后的所有比赛周均为周二开始、下周一结束的7天周期,无需手动维护后续每个周的起止时间
  • 赛季更新时仅需修改3个配置变量,避免了逐周录入32个日期的重复劳动和手误风险
  • 代码量比原实现减少80%,排查问题、调整逻辑都更简单,如果遇到特殊调整的周次,额外加单个判断分支即可,不需要改动整体逻辑。

内容的提问来源于stack exchange,提问作者derektgardner

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.05 18:48:03