Если у меня есть список с именами и датами людей, и я хочу только сохранить запись на самую раннюю дату для каждого человека, как мне это сделать? Я хочу, чтобы окончательный список был в алфавитном порядке по фамилии, затем по имени и содержал только запись с самой ранней датой в конце.
Вот пример списка и того, что я пробовал, но он снова вернул мне тот же список.
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']
Любая помощь или понимание будет принята с благодарностью!