У меня есть список кортежей, глядя, как items = [(id, date), ...]
Список кортежей: удалить кортежи путем сравнения элемента, если у них есть еще один идентичный элемент
Я хочу, чтобы отфильтровать список кортежей, поэтому я только держась за один кортеж для каждого уникального идентификатора, а для всех вхождений кортежей, имеющих одинаковый идентификатор, я хочу сохранить запись с самым последним значением даты.
Например:
items = [('1', '12/2/2016'), ('2', '12/20/2016'), ('1', '12/24/2016')]
# Apply filter comparing tuples with identical [0] element based off [1] element
items = [('2', '12/20/2016'), ('1', '12/24/2016')]
Я ищу самый элегантный и «вещий» решение этой проблемы, спасибо!
сортировать их, а затем использовать 'itertools.groupby' группировать их по id, затем используйте 'max' с ключевой функцией, чтобы найти самую последнюю дату. Я думаю, вы можете использовать 'datetime.date' для этого, но мне нужно было бы проверить –