【发布时间】:2012-07-21 20:05:17
【问题描述】:
我在 .txt 中有两个数据列表
data1 = "name1", "name2", "name3", "name4" etc.
data2 = "name3", "name6", "name10" etc.
我想找出两个列表中出现的名称 我该怎么做?
【问题讨论】:
标签: python python-2.7
我在 .txt 中有两个数据列表
data1 = "name1", "name2", "name3", "name4" etc.
data2 = "name3", "name6", "name10" etc.
我想找出两个列表中出现的名称 我该怎么做?
【问题讨论】:
标签: python python-2.7
使用sets:
set(data1) & set(data2)
& 运算符的意思是“给我这两个集合的交集”;或者,您可以使用.intersection 方法:
set(data1).intersection(data2)
【讨论】:
Counter() 对象,它们是多重集。
data2 创建一个集合,并使用一个列表推导来测试该集合的值:data2_set = set(data2) 和[v for v in data1 if v in data2]。
nf = [x for x in data1 if x in data2]
nf
将返回两个列表中的共同项目
【讨论】:
>>> [ name for name in data1 if name in data2 ]
['name3']
【讨论】:
For a in data1:
for b in data2:
if a==b:
print(a)
这是一种方法,但不是最好的方法
【讨论】: