Python 如何检查项目是否在列表列表中
我想检查项目是否在列表列表中,例如,如果1在:Python 如何检查项目是否在列表列表中,python,Python,我想检查项目是否在列表列表中,例如,如果1在: my_list = [[[-1, -1, 0], [-1, -1, -1, -1]], [[-1, 1, -1, -1], [-1, -1, -1, -1]], [[-1, -1, -1, -1], [-1, -1, -1, -1]]] 我试过: if 1 in my_list : 但它只适用于简单的列表 谢谢你的帮助这应该行得通 from itertools import chain 1 in chain.from_iterable(cha
my_list = [[[-1, -1, 0], [-1, -1, -1, -1]], [[-1, 1, -1, -1], [-1, -1, -1, -1]], [[-1, -1, -1, -1], [-1, -1, -1, -1]]]
我试过:
if 1 in my_list :
但它只适用于简单的列表
谢谢你的帮助这应该行得通
from itertools import chain
1 in chain.from_iterable(chain.from_iterable(my_list))
这应该行得通
from itertools import chain
1 in chain.from_iterable(chain.from_iterable(my_list))
要查找交错列表中的项,可以使用递归,通过再次调用函数或简单地测试非列表项的相等性来输入搜索嵌套列表:
def recursive_find(lst, item):
for x in lst:
if isinstance(x, list):
if recursive_find(x, item):
return True
elif x==item:
return True
return False
print(recursive_find(my_list, 0)) # -> True
print(recursive_find(my_list, 8)) # -> False
要查找交错列表中的项,可以使用递归,通过再次调用函数或简单地测试非列表项的相等性来输入搜索嵌套列表:
def recursive_find(lst, item):
for x in lst:
if isinstance(x, list):
if recursive_find(x, item):
return True
elif x==item:
return True
return False
print(recursive_find(my_list, 0)) # -> True
print(recursive_find(my_list, 8)) # -> False
这将适用于任何级别的list@SachitNagpalNo列表。不适用于任何级别。从列表(我的列表)到列表所做的是,降低一级。[[1,2,3],[1,2,3]]将转换为[1,2,3,1,2,3]。您可以通过在前面添加list()函数来检查这一点。i、 e.工作清单(从列表(我的列表)开始的链)。这将创建新的列表,您可以看到该函数正在执行的操作。这里有两个级别,在这个问题中,因此,我已经应用了两次该函数,以打破两个级别。好的,谢谢,我们也可以通过,展平列表,然后选中这将适用于任何级别的列表@SachitNagpalNo。不适用于任何级别。W帽子链。从列表(my_list)到列表是,减少一级。[[1,2,3],[1,2,3]]将转换为[1,2,3,1,2,3]。您可以通过在前面添加list()函数来检查这一点。例如,执行列表(chain.from_iterable)(my_list)。这将创建新的列表,您可以看到该函数正在执行的操作。这里有两个级别,在问题中,因此,我已应用该函数两次,以打破两个级别。好的,谢谢,我们也可以通过展平列表,然后检查来实现此目的