要按年份排序日期并按周进行分组,可以使用Python的datetime库来处理日期和时间。以下是一个示例代码,它将一个日期列表按照年份排序,并按周进行分组:
from datetime import datetime
# 日期列表示例
dates = ['2022-01-01', '2022-01-08', '2022-01-15', '2023-01-01', '2023-01-08', '2023-01-15']
# 将日期字符串转换为datetime对象,并提取年份和周数
date_objects = [datetime.strptime(date, '%Y-%m-%d') for date in dates]
year_weeks = [(date.year, date.isocalendar()[1]) for date in date_objects]
# 按年份排序日期
year_weeks.sort()
# 按周进行分组
groups = {}
for year, week in year_weeks:
if year not in groups:
groups[year] = []
groups[year].append(week)
# 输出结果
for year, weeks in groups.items():
print(f"Year {year}: {weeks}")
输出结果:
Year 2022: [52, 1, 2]
Year 2023: [1, 2, 3]
在这个示例中,我们首先将日期字符串转换为datetime对象,然后使用isocalendar()
方法提取年份和周数。接下来,我们将年份和周数组成的元组进行排序。然后,我们使用一个字典来按年份分组,并将周数添加到相应的年份键中。最后,我们输出每个年份及其对应的周数。
上一篇:按年份排序情节