比较Python中的许多日期/时间对象



我有一个.csv文件,格式为:

Username, Datetime
user1, datetime1
user1, datetime2
user2, datetime3
user2, datetime4
user2, datetime5
user3, datetime6
user1, datetime7
user2, datetime8

该文件有时可能非常大(有时多达300000多名用户)。我想比较日期时间对象,看看一个特定用户的日期时间对象是否在X天内。

执行这项任务的有效方法是什么?显然,我不想比较不同用户的日期时间对象,所以先创建一些数据结构(比如字典)明智吗?

我在想,创建一个形式为的字典可能就足够了

{user1: [datetime1, datetime2, datetime7], 
user2: [datetime3, datetime4, datetime5, datetime8], ... }

然后迭代每个用户的每个日期时间组合?有没有一种更快、更有效的方法来进行比较?

创建一个字典意味着一次将所有300k多条记录存储在内存中,这可能不是您想要的。

如果csv文件先按用户排序,然后按时间戳排序,那么您一次只需要读取和处理一行,这似乎非常有效。

最新更新