如果我有一个包含人员姓名和日期的列表,并且我只想保留每个人最早日期的条目,我该怎么做?我希望最终列表按姓氏字母顺序排列,然后是名字,并且仅包含末尾日期最早的条目。
这是列表和我尝试过的示例,但它只是再次给了我相同的列表。
L1=['Smith, John, 1994', 'Smith, John, 1996', 'Smith, John, 1998', 'Smith, Joan, 1993', 'Smith, Joan, 1995', 'Smith, Jack, 1989', 'Smith, Jack, 1991', 'Jones, Adam, 2000', 'Jones, Adam, 1998', 'Jones, Sarah, 2002', 'Jones, Sarah, 2005', 'Brady, Tom, 2001', 'Brady, Tonya, 2002']
L1.sort()
L2= []
for item in L1:
if item.split(',')[:2] not in L2:
L2.append(item)
最终产品应如下所示:
L2=['Brady, Tom, 2001', 'Brady, Tonya, 2002', 'Jones, Adam, 1998', 'Jones, Sarah, 2002', 'Smith, Jack, 1989', 'Smith, Joan, 1993', 'Smith, John, 1994']
任何帮助或见解将不胜感激!