比较包含元组的两个列表以查找缺少的值

2024-04-20 09:19:45 发布

您现在位置:Python中文网/ 问答频道 /正文

我目前在Python中有两个元组列表,如:

A = [(1001, 'C:\\dd\fff'), (1002, 'C:\\dd\eee')]
B = [(1001, 'C:\\dd\fff'), (1002, 'C:\\dd\eee'), (1003, 'C:\\dd\ggg')]

结果列表应仅包含列表B中不在列表A中的值。

尝试使用(set(A) - set(B)),但由于第二个参数作为文件路径,因此无法提供正确的结果。有人能指出如何使用Python实现这一点吗


Tags: 文件路径列表参数fffdd元组set
2条回答

如果您不关心顺序,您可以使用基于set的解决方案,否则您可以利用列表理解,如下所示:

A = [(1001,'C:\\dd\fff'),(1002,'C:\\dd\eee')]
B = [(1001,'C:\\dd\fff'),(1002,'C:\\dd\eee'), (1003,'C:\\dd\ggg')]
result = [i for i in B if i not in A]
print(result)

输出:

[(1003, 'C:\\dd\\ggg')]

请尝试:

list(set(B) - set(A))

相关问题 更多 >