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

Python 在另一个列表的嵌套列表中比较/查找列表,python,python-3.x,list,nested-lists,Python,Python 3.x,List,Nested Lists,我有几个清单叫做“查找”。我想知道这些发现是否是完整清单的一部分。查找1-4的列表是完整列表的一部分,而查找5-7的列表不是完整列表的一部分 下面的示例返回Yes 因为lenfind2!=lenfind4,当前的if语句非常笨拙,几乎毫无用处 如何使这项工作更通用?您可以将all与一个生成器一起使用,如果所有内容都是真或假,该生成器将返回真: 这一个是通用的,只需将find2更改为需要使用完整列表检查的任何列表。您可以将all与生成器一起使用,如果所有内容都是真或假,则该生成器将返回真: 这是通

我有几个清单叫做“查找”。我想知道这些发现是否是完整清单的一部分。查找1-4的列表是完整列表的一部分,而查找5-7的列表不是完整列表的一部分

下面的示例返回Yes

因为lenfind2!=lenfind4,当前的if语句非常笨拙,几乎毫无用处

如何使这项工作更通用?

您可以将all与一个生成器一起使用,如果所有内容都是真或假,该生成器将返回真:

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

您可以将all与生成器一起使用,如果所有内容都是真或假,则该生成器将返回真:

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

尝试以下操作:

set1 = set(find1)
full_set = set(full_list)
if set1.issubset(full_set):
    print("Yes")
else:
    print("No")
试试这个:

set1 = set(find1)
full_set = set(full_list)
if set1.issubset(full_set):
    print("Yes")
else:
    print("No")
您可以设置一个函数来处理所有这些,所有提到的方法都可以工作,只需显示其他选项,您还可以使用过滤器和比较镜头

def is_in_full(k):
    l = list(filter(lambda x: x in k, full_list))
    if len(l) == len(k):
        return 'Yes'
    else:
        return 'No'

print(is_in_full(find1))
# Yes
您可以设置一个函数来处理所有这些,所有提到的方法都可以工作,只需显示其他选项,您还可以使用过滤器和比较镜头

def is_in_full(k):
    l = list(filter(lambda x: x in k, full_list))
    if len(l) == len(k):
        return 'Yes'
    else:
        return 'No'

print(is_in_full(find1))
# Yes

我们必须首先将列表转换为元组,因为它们不可散列。我们必须首先将列表转换为元组,因为它们不可散列。