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

如何按年份和季度对日期列表进行时间顺序排序

解决按年份和季度排序日期列表的问题

嘿,这个需求其实很好实现!你的日期格式是YYYY-QX这种固定的结构化格式,有两种简单可靠的方式完成排序:

方法一:直接使用内置sorted()函数

因为你的日期字符串是四位年份+季度标识的格式,字符串的字典序刚好和时间顺序完全匹配——先比较年份的四位数字,年份相同再比较季度的数字。所以直接调用Python内置的sorted()函数就能得到想要的结果:

Date = ['2015-Q1', '2013-Q4', '2017-Q2', '2018-Q1']
sorted_dates = sorted(Date)
print(sorted_dates)
# 输出结果: ['2013-Q4', '2015-Q1', '2017-Q2', '2018-Q1']

方法二:基于年份和季度数值自定义排序键

如果想要更明确地控制排序逻辑(比如担心未来日期格式有小变动),可以拆分每个日期字符串,提取年份和季度的数值作为排序依据:

Date = ['2015-Q1', '2013-Q4', '2017-Q2', '2018-Q1']
# 用lambda表达式生成排序键:(年份整数, 季度整数)
sorted_dates = sorted(Date, key=lambda x: (int(x.split('-Q')[0]), int(x.split('-Q')[1])))
print(sorted_dates)
# 同样输出目标排序结果

这种方法的优势是逻辑更清晰,排序完全基于数值大小,即使后续日期格式有细微调整(比如季度标识变成Q01),只要稍微修改拆分逻辑就能适配。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.05.25 07:26:16