我有一個包含近似重複元素的列表,但標識元素的數字除外。我想刪除所有重複項,同時保留包含重複的第一個元素的編號。在保留變量的同時刪除Python列表中近似重複的元素
例如,我想與lnew
更換l
:
l = ['iter1apple','iter2banana','iter3carrot','iter4apple','iter5orange','iter6banana','iter7mango']
lnew = ['iter1apple','iter2banana','iter3carrot','iter5orange','iter7mango']
我猜這事做與列表元素的其餘部分分割數,轉換列表中設置和使用defaultdict
與分裂的元素,但我無法弄清楚如何。
任何建議,將不勝感激。
那麼您是如何決定刪除'iter4apple'和'iter6banana'的?一般的解決方案就像'lnew = [elem for elem in l if elem not in discardable]''discardable'是你想要移除的那一組。 – hughdbrown 2013-03-24 21:15:47
@hughdbrown:'discardable'不是預定義的。我試圖根據元素位置確定什麼構成可丟棄,以及它是否與具有較低'iter'號碼的元素重複。 – user1185790 2013-03-24 21:28:02