不同ID的日期范围之间重叠天数的总和
创始人
2025-01-09 03:30:38
0

以下是一个示例代码,解决了计算不同ID的日期范围之间重叠天数的总和的问题:

from datetime import datetime, timedelta

# 定义日期范围类
class DateRange:
    def __init__(self, start_date, end_date):
        self.start_date = start_date
        self.end_date = end_date

    def get_overlap_days(self, other_range):
        overlap_start = max(self.start_date, other_range.start_date)
        overlap_end = min(self.end_date, other_range.end_date)
        overlap = (overlap_end - overlap_start).days + 1
        return max(0, overlap)


def calculate_overlap_days(date_ranges):
    total_overlap_days = 0
    for i in range(len(date_ranges)):
        for j in range(i + 1, len(date_ranges)):
            overlap_days = date_ranges[i].get_overlap_days(date_ranges[j])
            total_overlap_days += overlap_days
    return total_overlap_days


# 示例数据
date_range1 = DateRange(datetime(2022, 1, 1), datetime(2022, 1, 5))
date_range2 = DateRange(datetime(2022, 1, 4), datetime(2022, 1, 8))
date_range3 = DateRange(datetime(2022, 1, 10), datetime(2022, 1, 15))

date_ranges = [date_range1, date_range2, date_range3]

# 计算重叠天数总和
overlap_days = calculate_overlap_days(date_ranges)
print("Total overlap days:", overlap_days)

在这个示例中,我们定义了一个DateRange类来表示日期范围,该类包含起始日期和结束日期。然后,我们使用get_overlap_days方法来计算两个日期范围之间的重叠天数。最后,我们使用calculate_overlap_days函数来计算不同ID的日期范围之间重叠天数的总和。

请注意,此示例假设日期范围是闭区间,即包括起始日期和结束日期。如果你的需求是半开区间(包括起始日期但不包括结束日期),你可以相应地调整计算重叠天数的逻辑。

相关内容

热门资讯

透视数据"潮汕汇挂&... 较多好评“微乐万能挂官网”开挂(透视)辅助教程 了解更多开挂安装加(136704302)微信号是一款...
盘点一款"丽水都莱大... 盘点一款"丽水都莱大菠萝脚本辅助"开挂(透视)pokerworld破解版下载(有人有挂);打开点击测...
透视免费"打大a辅助... 透视免费"打大a辅助器"开挂(透视)pokemmo手机辅助软件(有挂神器);无需打开直接搜索微信(1...
透视攻略"微信小程序... 透视攻略"微信小程序功夫川辅助"开挂(透视)wpk德州局透视(有挂技术)微信小程序功夫川辅助ai黑科...
分享个大家"三江互娱... 分享个大家"三江互娱辅助"开挂(透视)德扑圈透视挂(今日头条)【无需打开直接搜索加薇13670430...
最新研发"小南娱乐科... >>您好:小南娱乐科技确实是有挂的,很多玩家在这款小南娱乐科技游戏中打牌都会发现很多用户的牌特别好,...
信息共享"中至上饶打... 中至上饶打炸漏洞 无需打开直接搜索微信:136704302本司针对手游进行,选择我们的四大理由: 1...
透视透视"开心泉州小... 透视透视"开心泉州小程序福州"开挂(透视)hhpoker免费透视脚本(有人有挂) 【无需打开直接搜索...
玩家必备攻略"提高微... 玩家必备攻略"提高微乐运气的方法"开挂(透视)epoker有透视吗(有挂存在);无需打开直接搜索加薇...
玩家必看教程"约局吧... 【亲,we-poker是什么软件 这款游戏可以开挂的,确实是有挂的,很多玩家在这款we-poker是...