Итак, у меня есть следующий список списков, и я пытаюсь уменьшить размер, объединяя дубликаты, только если элементы списков точно совпадают. порядок значительный (изменение порядка элементов будет проблемой). также они не равны по размеру списков.
Пример:
List = [["a", "b", "c", "d", "e"], ["a", "b"], ["a", "b", "c", "d", "e", "f"], ["a"], ["a", "b", "c", "d", "e"], ["a", "b"]]
Я ожидаю следующий вывод:
List = [["a", "b", "c", "d", "e"], ["a", "b"], ["a", "b", "c", "d", "e", "f"], ["a"]]
это код:
def consolidate(all_list):
a = {}
for v in all_list:
if len(v) > 0:
k = v[0]
if k not in a: a[k] = []
a[k].append(v[1:])
for k in a:
a[k] = consolidate(a[k])
return a
Однако, похоже, это не работает.