这是一个按日期分组计数的解决方法的代码示例:
from collections import defaultdict
from datetime import datetime
# 假设有一个包含日期的列表
dates = [
'2022-01-01',
'2022-01-01',
'2022-01-02',
'2022-01-03',
'2022-01-03',
'2022-01-04',
'2022-01-04',
]
# 使用defaultdict创建一个字典,以日期为键,初始值为0
date_counts = defaultdict(int)
# 遍历日期列表,将每个日期计数加1
for date in dates:
# 将日期字符串转换为datetime对象
date_obj = datetime.strptime(date, '%Y-%m-%d')
# 将日期对象转换为新的日期字符串,只保留年月日部分
date_str = datetime.strftime(date_obj, '%Y-%m-%d')
# 将日期字符串作为键,计数加1
date_counts[date_str] += 1
# 打印按日期分组计数的结果
for date, count in date_counts.items():
print(f"{date}: {count}")
上述代码中,我们使用了defaultdict
来创建一个默认值为0的字典date_counts
,并遍历日期列表dates
,将每个日期计数加1。最后,我们遍历date_counts
字典,打印按日期分组计数的结果。
下一篇:按日期分组计数不同客户端的查询