Skip to main content
 首页 » 编程设计

python之在另一个列表的嵌套列表中比较/查找列表

2025年05月04日20grandyang

我有几个名为find 的列表。我想知道这些 find 是否是 full_list 的一部分。列表 find 1-4 是 full_list 的一部分,而列表 find 5-7 不是。

下面的例子返回"Yes"。

find1 = [[1, 1]] 
find2 = [[1, 1], [2, 2]] 
find3 = [[1, 1], [3, 3]] 
find4 = [[4, 4], [2, 2], [3, 3]] 
 
find5 = [[1, 0]] 
find6 = [[1, 1], [2, 0]] 
find7 = [[1, 1], [3, 0]] 
 
full_list = [[1, 1], [2, 2], [3, 3], [4, 4]] 
 
if find2[0] in full_list and find2[1] in full_list: 
    print("Yes") 
else: 
    print("No") 

因为 len(find2) != len(find4),当前的 if 语句非常笨拙,几乎没有用。

如何使这项工作以更通用的方式进行?

请您参考如下方法:

您可以将 all() 与生成器一起使用,如果一切为真或 False 则返回 True:

if all(x in full_list for x in find2): 
    print("Yes") 
else: 
    print("No") 
 
# => prints Yes 

这个是通用的,只需要将 find2 更改为您需要使用 full_list 检查的任何列表。