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

如何计算两个季度格式日期之间的季度数量(返回整数)

计算两个季度日期之间的季度数量

核心思路

把每个季度日期转换为「累计季度数」(年份 × 4 + 季度序号),两个累计值的差值绝对值就是两个日期之间的季度数量。

原生Python实现

无需依赖第三方库,直接拆分字符串计算:

def get_quarter_diff(date_a, date_b):
    # 拆分年份和季度
    year_a, q_a = date_a.split('Q')
    year_b, q_b = date_b.split('Q')
    
    # 转换为整数并计算累计季度数
    total_a = int(year_a) * 4 + int(q_a)
    total_b = int(year_b) * 4 + int(q_b)
    
    # 返回绝对值差
    return abs(total_b - total_a)

# 测试示例
date1 = '2020Q1'
date2 = '2022Q4'
print(get_quarter_diff(date1, date2))  # 输出:11

用Pandas简化实现

如果项目已使用Pandas,用Period类可以更简洁处理季度日期:

import pandas as pd

date1 = '2020Q1'
date2 = '2022Q4'

# 转换为季度周期对象
period1 = pd.Period(date1, freq='Q')
period2 = pd.Period(date2, freq='Q')

# 计算差值并获取季度数
diff = abs(period2 - period1)
print(diff.n)  # 输出:11

结果说明

示例中2020Q1到2022Q4之间的季度数量为11——从2020Q2到2022Q4正好是11个完整季度。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.17 03:20:43