我想在liste2
找到新单词。
liste1 = [['euro2016', '99'], ['portugal', '87'], ['ronaldo', '34']]
liste2 = [['euro2016', '90'], ['portugal', '75'], ['ronaldo', '44'], ['nani', '15']]
l1 = len(liste1)
l2 = len(liste2)
for x in range(0,l2):
for y in range(0,l1):
if liste2[x][0] not in liste1[y][0]:
print liste2[x][0]
但是我的代码给出了这样的结果:
euro2016
euro2016
葡萄牙
葡萄牙
罗
罗
纳尼
纳尼
纳尼
我想我必须搜索liste1 [all] [0],但我不知道该怎么做。
答案 0 :(得分:1)
检查alarms
[0] "windows"
[1] "dual sim"
[2] "32 gb"
[3] "Intel i5"
答案 1 :(得分:1)
我想在liste2中找到新单词
您可以使用列表推导并应用仅filter
中仅包含新项目的liste2
:
result = [i[0] for i in liste2 if i[0] not in (j[0] for j in liste1)]
# ^ filtering is done here ^
print(result)
# ['nani']
答案 2 :(得分:0)
In [8]: dict1 = dict(liste1)
In [9]: dict2 = dict(liste2)
In [10]: print(set(dict2.keys()) - set(dict1.keys()))
set(['nani'])
答案 3 :(得分:0)
您可以在每个列表项中创建一组第一个元素,然后获取差异。它将返回liste2中不在liste1中的项:
l3 = set(map(lambda x:x[0],liste1))
l4 = set(map(lambda x: x[0],liste2))
print list(l4.difference(l3))[0]
输出:
nani
>>>