以下是一个示例代码,可以按日期分组并统计过去7天和一个月内每天的点击次数:
import datetime
from collections import Counter
# 假设点击数据以日期和点击次数的形式存储在一个列表中
click_data = [
{'date': '2021-08-01', 'clicks': 10},
{'date': '2021-08-02', 'clicks': 5},
{'date': '2021-08-03', 'clicks': 12},
{'date': '2021-08-04', 'clicks': 8},
{'date': '2021-08-05', 'clicks': 15},
{'date': '2021-08-06', 'clicks': 7},
{'date': '2021-08-07', 'clicks': 9},
# ... 其他日期和点击次数数据
]
# 获取当前日期
today = datetime.date.today()
# 统计过去7天的点击次数
past_7_days = [today - datetime.timedelta(days=i) for i in range(7)]
clicks_past_7_days = Counter()
for data in click_data:
date = datetime.datetime.strptime(data['date'], '%Y-%m-%d').date()
if date in past_7_days:
clicks_past_7_days[date] += data['clicks']
print("过去7天点击次数统计:")
for date, clicks in clicks_past_7_days.items():
print(f"{date}: {clicks}")
# 统计一个月内每天的点击次数
past_30_days = [today - datetime.timedelta(days=i) for i in range(30)]
clicks_past_30_days = Counter()
for data in click_data:
date = datetime.datetime.strptime(data['date'], '%Y-%m-%d').date()
if date in past_30_days:
clicks_past_30_days[date] += data['clicks']
print("一个月内每天点击次数统计:")
for date, clicks in clicks_past_30_days.items():
print(f"{date}: {clicks}")
请注意,上述示例代码假设点击数据以日期和点击次数的形式存储在一个名为click_data
的列表中。你需要根据实际情况修改代码来适应你的数据结构和数据来源。
此代码将使用datetime
模块来处理日期和时间,使用Counter
类来简化点击次数的统计。首先,它获取当前日期,然后使用timedelta
对象从当前日期倒推7天和30天的日期列表。接下来,它迭代点击数据并将点击次数累加到相应的日期中。最后,它打印出过去7天和一个月内每天的点击次数统计结果。