考慮以下列表:合併元組,如果他們有一個共同的元素
tuple_list = [('c', 'e'), ('c', 'd'), ('a', 'b'), ('d', 'e')]
我怎樣才能做到這一點?
new_tuple_list = [('c', 'e', 'd'), ('a', 'b')]
我曾嘗試:
for tuple in tuple_list:
for tup in tuple_list:
if tuple[0] == tup[0]:
new_tup = (tuple[0],tuple[1],tup[1])
new_tuple_list.append(new_tup)
但是,如果我有數組的元素按照一定的順序,這意味着它會導致此相反,它僅適用:
new_tuple_list = [('c', 'e', 'd'), ('a', 'b'), ('d', 'e')]
您的合併策略是不明確 – alfasin
我想每一個都有一個元素的元組合並('c','d')''('c','d')',因爲'c'是共同的,它會給我們'('c','e','d')'和然後將它與'('d','e')合併,因爲'd'和'e'共同會導致'('c','e','d')' – Meryem
下面的例子基本上回答了一個非常類似的問題http://stackoverflow.com/questions/9118312/finding-tuples-with-a-common-element? – fedepad