我有兩個數據列出了一個.txt
data1 = "name1", "name2", "name3", "name4" etc.
data2 = "name3", "name6", "name10" etc.
我想找出這名同時出現在名單 如何我會做嗎?
我有兩個數據列出了一個.txt
data1 = "name1", "name2", "name3", "name4" etc.
data2 = "name3", "name6", "name10" etc.
我想找出這名同時出現在名單 如何我會做嗎?
使用sets:
set(data1) & set(data2)
的&
運營商的意思是 「給我這兩個集合的交集」或者你可以使用.intersection
方法:
set(data1).intersection(data2)
For a in data1:
for b in data2:
if a==b:
print(a)
這是應該做的一種方式,而不是最好的辦法,雖然
nf = [x for x in data1 if x in data2]
nf
將兩個列表返回公用項
>>> [ name for name in data1 if name in data2 ]
['name3']
對,這對我來說非常合適。謝謝! – ivanhoifung 2012-07-23 14:59:03
我發現.intersection本身更具可讀性,但正如你所說他們做同樣的事情。 – TimothyAWiseman 2012-07-23 15:02:41
@ivanhoifung如果這解決了你的問題,你應該[通過點擊複選標記接受這個答案](http://meta.stackexchange.com/questions/5234/how-does-accepting-an-answer-work/5235#5235)在答案旁邊。它會用一些積分獎勵雙方,並將此問題標記爲已解決。 – Levon 2012-07-23 15:18:21