python - 如何扫描一个大列表以查找所有元素是否与第二个较小列表的元素匹配?
问题描述
我很难解决一个我认为很简单的问题。我有两个清单:
- 一个很小的,看起来像这样:
list1 = ['A', 'B', 'C', 'D','E']
- 第二个列表要大得多,大约有 800 个元素。它看起来像这样:
list2 = ['E', 'B', 'F', 'A', 'C', 'N'...]
我想扫描 list2 并查看它的所有元素是否与 list1 中的元素相同。如果它们不同,我想查看哪些元素不同并从 list2 中取消它们。在此示例中,我想从 list2 打印“F”和“N”并取消它们。
我试过了:
found = False
lenght2 = len(list2)
i = 0
for j in list1:
for i in range(0, lenght2):
if i != j:
found = True
#I don't know how to cancel i
print(i)
i = i + 1
break
然而,整个事情都行不通。有没有人可以帮助我?
解决方案
您可以遍历所有 list2 然后检查它是否在列表一中,如下所示:
for i in range(len(list2)):
if list2[i] in list1:
pass
else:
#Cancel list2[i] ? Or whatever.
推荐阅读
- python - 捕获雨水:蛮力方法中的错误
- r - 使用 dplyr 和 paste0 汇总和整理结果后没有返回记录
- javascript - 猫鼬等待承诺错误
- python - 添加数组字段 OperationalError
- perl - 如何使用 Perl 根据它们的差异结果将目录中的文件排序到不同的文件夹中
- html - 离子图像未在第一页加载时显示
- algorithm - 我们是根据计算模型进行算法分析,还是根据“常识”进行分析?
- ios - 自定义导航项未显示在顶级视图控制器上
- javascript - slickslider (unslick) 响应式
- bash - bash脚本中`-exec mv -f`的含义