【发布时间】:2021-04-30 12:57:41
【问题描述】:
我需要检查一个列表中的项目是否在另一个列表中。两个列表都包含文件的路径。
list1 = [a/b/c/file1.txt, b/c/d/file2.txt]
list2 = [a/b/c/file1.txt, b/c/d/file2.txt, d/f/g/test4.txt, d/k/test5.txt]
我尝试了类似的方法:
len1 = len(list1)
len2 = len(list2)
res = list(set(list2) - set(list1))
len3 = len(res)
if len2 - len1 == len3:
print("List2 contains all the items in list1")
但这不是最佳选择,我有超过 50k 项的列表。我认为一个好的解决方案可以是创建一个哈希表,但我不知道如何构建它。有什么建议可以留言。
【问题讨论】:
-
这里有什么问题?为什么你觉得集合不是最理想的?
标签: python python-3.x algorithm hashtable