以下是一个示例代码,用于按小时间隔分组:
import datetime
def group_by_small_time_interval(time_list, interval_minutes):
groups = {}
for time in time_list:
# 将时间戳转换为datetime对象
dt = datetime.datetime.fromtimestamp(time)
# 计算时间的小时间隔
interval = (dt.minute // interval_minutes) * interval_minutes
# 将时间添加到对应的分组中
if interval in groups:
groups[interval].append(dt)
else:
groups[interval] = [dt]
return groups
time_list = [1609459200, 1609462800, 1609466400, 1609470000, 1609473600, 1609477200]
interval_minutes = 30
result = group_by_small_time_interval(time_list, interval_minutes)
for interval, times in result.items():
print(f"时间间隔 {interval}-{interval+interval_minutes} 分钟:")
for time in times:
print(time)
以上代码将给定的时间戳列表time_list
按照指定的小时间隔interval_minutes
进行分组。每个分组包含在该小时间隔范围内的所有时间。
输出示例:
时间间隔 0-30 分钟:
2021-01-01 00:00:00
时间间隔 30-60 分钟:
2021-01-01 00:30:00
时间间隔 60-90 分钟:
2021-01-01 01:00:00
时间间隔 90-120 分钟:
2021-01-01 01:30:00
时间间隔 120-150 分钟:
2021-01-01 02:00:00
时间间隔 150-180 分钟:
2021-01-01 02:30:00
上一篇:按小时获取唯一客户数量的SQL