我有兩個列表list1
和list2
。我在stackoverflow上找到了一個非常簡單的方法來獲取這兩個列表中的常見元素,如下所示result = list(set(list1) & set(list2))
。不幸的是,由此,結果列表中元素的順序不會被保留。兩個列表之間的共同元素和保留兩個列表中元素的順序
例如:
list1 = ['a', 'e', 't', 'b', 'c']
list2 = ['e', 'b', 'a', 'c', 'n', 's']
我想要的結果(共同要素)是這一順序['e', 'a', 'b', 'c']
。因爲,例如,'e'在list1和list2中,並且在list1中位於2並且在list2中位於1,而'a'在list1和list2中,並且在list1中位於1並且在list2中位於位置3,因此'e'在2之前是'a'1 + 3。
那麼,是否有任何簡單的方法來使兩個列表之間具有共同元素並保留元素的順序?
你想假設「e」和「T」在List1被換什麼順序? – wim
'list1 = ['a','b']的預期輸出是什麼? list2中= [ 'B', 'A']'?按照你的算法,'a'和'b'具有相同的位置值'3',所以首先呢? – Kevin
@Kevin在這種情況下無關緊要如果結果是[a,b]或[b,a] – shn