比较Python

时间:2015-11-02 18:08:34

标签: python csv datetime comparison

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

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

文件有时可能非常大(有时最多可达300,000+用户)。我想比较日期时间对象,以查看某个特定用户是否具有彼此相隔X天的日期时间对象。

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

我认为创建表单字典可能就足够了:

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

然后迭代每个用户的每个日期时间组合?是否有更快,更有效的方法进行比较?

1 个答案:

答案 0 :(得分:0)

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

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