Оставить первые встретившиеся в массиве
Есть многомерный список (массив)
[['Вася','16','м','10А'],
['Женя','17','м','11Б'],
['Женя','17','ж','9Б'],
['Вася','16','м','10В'],
['Лена','17','ж','11А']]
Как оставить первые встретившиеся в массиве, по имени и возрасту?
[['Вася','16','м','10А'],
['Женя','17','м','11Б'],
['Лена','17','ж','11А']]
Ответы (1 шт):
Автор решения: Xander
→ Ссылка
data = [
['Вася', '16', 'м', '10А'],
['Женя', '17', 'м', '11Б'],
['Женя', '17', 'ж', '9Б'],
['Вася', '16', 'м', '10В'],
['Лена', '17', 'ж', '11А']
]
result = []
proceeded = set()
for item in data:
key = tuple(item[:2])
if key not in proceeded:
result.append(item)
proceeded.add(key)
print(result)