以下是一个示例代码,展示了如何按日期分组一个列表:
from collections import defaultdict
# 原始列表
my_list = [('2021-01-01', 'item1'), ('2021-01-02', 'item2'), ('2021-01-01', 'item3'), ('2021-01-03', 'item4')]
# 使用 defaultdict 创建一个字典,每个日期对应一个空列表
grouped_dict = defaultdict(list)
# 遍历原始列表,将每个元素按日期添加到相应的列表中
for date, item in my_list:
grouped_dict[date].append(item)
# 打印按日期分组后的列表
for date, items in grouped_dict.items():
print(f"日期 {date}: {items}")
输出结果为:
日期 2021-01-01: ['item1', 'item3']
日期 2021-01-02: ['item2']
日期 2021-01-03: ['item4']
这个示例使用了 defaultdict
,它是一个特殊的字典类型,当你访问一个不存在的键时,它会自动创建一个默认的空值。这样我们就可以直接向对应的日期键添加元素,而不需要事先检查键是否存在。最后,通过遍历字典的键值对,可以轻松地打印出按日期分组的列表。
下一篇:按日期分组每小时的数据