Python:仅将最新登录保存到文件

Python:仅将最新登录保存到文件,python,list,Python,List,我有这个项目,我需要处理大访问日志,并获得所有用户的最后登录尝试列表。在处理日志时,我得到了如下结果: [user1, <last login recorded>, <current login>] [user2, <no last login recorded>, <current login>] [user1, <last login recorded>, <current login>] [user3, <las

我有这个项目,我需要处理大访问日志,并获得所有用户的最后登录尝试列表。在处理日志时,我得到了如下结果:

[user1, <last login recorded>, <current login>]
[user2, <no last login recorded>, <current login>]
[user1, <last login recorded>, <current login>]
[user3, <last login recorded>, <current login>]
final_list = {}
for login in log_file:
    login = login.split(';')
    last_login = get_last_login();
    if last_login:
       final_list[login[0]] = (last_login, login[1]])
    ...

因此,如果我将每个登录添加到最终的_列表[],是否有方法检查用户是否已经在其中,并将当前登录与列表中的登录进行比较?

正如@gkunser指出的,您可以简单地为用户键入一个字典(
{}
),如下所示:

[user1, <last login recorded>, <current login>]
[user2, <no last login recorded>, <current login>]
[user1, <last login recorded>, <current login>]
[user3, <last login recorded>, <current login>]
final_list = {}
for login in log_file:
    login = login.split(';')
    last_login = get_last_login();
    if last_login:
       final_list[login[0]] = (last_login, login[1]])
    ...
这样,您将自动覆盖用户登录信息


[此伪代码用于建议一个不正确的集合]

有点离题,但在大多数Linux发行版上都有一个名为
lastlog
的命令,它会打印所有用户的上次登录时间。@FlorinStingaciu很高兴知道,但我正在处理ldap访问文件。不管怎样,还是谢谢你。只要使用一本由用户键入的字典-上次写入即可wins@gkusner你能提供一个例子来说明如何做到这一点吗?我试图复制这个,但我得到了“TypeError:“set”对象不支持项分配”看到上面的@gkusner,我想你可以使用字典(final_list={})而不是set。我不知道为什么我认为你需要一套。这里有一套。很抱歉我回复得太晚,但在重新考虑了这个方法后,我意识到字典正是我所需要的。