Я работаю с list
из dict
объектов, которые выглядят так (порядок объектов различается):
[
{'name': 'Foo', 'score': 1},
{'name': 'Bar', 'score': 2},
{'name': 'Foo', 'score': 3},
{'name': 'Bar', 'score': 3},
{'name': 'Foo', 'score': 2},
{'name': 'Baz', 'score': 2},
{'name': 'Baz', 'score': 1},
{'name': 'Bar', 'score': 1}
]
Я хочу удалить дублирующиеся имена, сохраняятолько одно из каждого имени, которое имеет самый высокий 'score'
.Результаты из приведенного выше списка будут:
[
{'name': 'Baz', 'score': 2},
{'name': 'Foo', 'score': 3},
{'name': 'Bar', 'score': 3}
]
Я не уверен, какой шаблон использовать здесь (кроме, казалось бы, идиотского цикла, который продолжает проверять, является ли текущий dict
s 'name'
уже в списке и затем проверяет, является ли его 'score'
больше, чем существующий 'score'
.