Как объединить похожие элементы в список

Я не нашел ничего подходящего в Google, поэтому надеюсь найти здесь помощь :)

I' у меня есть список Python, который выглядит следующим образом:

[['hoose', 200], ["Bananphone", 10], ['House', 200], ["Bonerphone", 10], ['UniqueValue', 777] ...]

У меня есть функция, которая возвращает расстояние Левенштейна между двумя строками, для House и hoose она вернет 2 и т. д.

Теперь я хочу объединить элементы списка, которые имеют оценку levenshtein of fe <5, пока (!) складываются их оценки, поэтому для результирующего списка я хочу следующее:

[['hoose', 400], ["Bananaphone", 20], ['UniqueValue', 777], ...]

или

[['House', 400], ["Bonerphone", 20], ['UniqueValue', 777], ...]  

и т. д.

Это не имеет значения, пока их значения добавляются.

В списке всегда будет только 2 очень похожих предмета, поэтому не ожидается цепного эффекта от любого предмета, подобного множеству других, съедающих их все.

5
задан Benjamin 7 June 2014 в 23:20
поделиться