将日期范围拆分为开始日期和结束日期,使用split()方法将字符串按照'-”分割为数组。
对开始日期和结束日期分别进行拆分,获取月份。
比较两个月份的大小,按照升序或降序排序。
根据排序结果重新组合日期范围字符串。
以下是示例代码:
date_range = "05/12/2022-08/03/2022-02/14/2023-12/25/2023"
ranges = date_range.split("-") # 按照'-”分割为数组
result = []
for i in range(0, len(ranges), 2):
start_date, end_date = ranges[i], ranges[i+1] # 拆分开始日期和结束日期
start_month = int(start_date.split("/")[0])
end_month = int(end_date.split("/")[0])
if start_month <= end_month:
result.append((start_date, end_date))
else:
result.append((end_date, start_date))
result.sort(key= lambda r: int(r[0].split("/")[0])) # 按月份排序
sorted_date_range = "-".join([date for pair in result for date in pair]) # 组合日期范围字符串
print(sorted_date_range)
输出结果:02/14/2023-12/25/2023-05/12/2022-08/03/2022
上一篇:按月份对对象数组进行排序
下一篇:按月份对JSON数据数组分组