2012-03-30 138 views
0

我得到列表的列表,並不知道如何過濾出重複(到一個新的列表)。創建新列表與列表中的副本列表 - python

我試圖提取路徑列表成功地過濾掉重複的,

dup_pathlist = pathA, pathA, pathC, pathC 

,但我不能恢復節點和dupl_pathlist項目之間的原始連接。 :(

我開始與此:

node_path_list = [['node1', 'pathA'], ['node2', 'pathA'], ['node3', 'pathB'], ['node4', 'pathC'], ['node5', 'pathC']] 

想在這裏結束:

result = [['node1', 'pathA'], ['node2', 'pathA'],['node4', 'pathC'], ['node5', 'pathC']] 
+0

是否輸出不管訂單! ? – 2012-03-30 15:51:53

+0

訂單無關緊要 – 2012-03-30 15:54:34

+0

是否可以有多個「路徑」出現多次?如果是的話,包含所有這些路徑的結果列表? – 2012-03-30 15:58:00

回答

-1
list1 = [ ['node1', 'pathA'], ['node2', 'pathA'], ['node3', 'pathB'], ['node4', 'pathC'], ['node5', 'pathA'] ] 
result = [x for x in list1 if [y[1] for y in list1].count(x[1]) > 1] 

編輯:這應該更好地工作

+0

這不會產生所需的輸出! – hymloth 2012-03-30 15:55:39

+0

@hymloth感謝您指出了這一點!我重讀了這個問題,並編輯了我的迴應:) – Andbdrew 2012-03-30 16:04:34

+0

@hymloth再次編輯一個更好的雙線解決方案,非問題:) – Andbdrew 2012-03-30 16:08:36