如何在列表列表中搜索项目?

时间:2013-07-30 03:48:26

标签: python list

我该怎么办呢。

index=[[test1,test2,test3],[test4,test5,test6],[test7,test8,test9]]
if test5 is in index:
    print True

5 个答案:

答案 0 :(得分:8)

使用any + generator expression

if any(test5 in subindex for subindex in index):
    print True

答案 1 :(得分:2)

遍历列表列表,并检查每个内部列表中是否存在:

for list in list_of_lists:
  if needle in list :
    print 'Found'

答案 2 :(得分:2)

尝试这种方式

index = [['test1','test2','test3'], ['test4','test5','test6'], ['test7','test8','test9']]
any(filter(lambda x : 'test5' in x, index))

答案 3 :(得分:1)

或者尝试使用itertools展开数组: -

index=[[test1,test2,test3],[test4,test5,test6],[test7,test8,test9]]
if test5 in itertools.chain(*index):
    print True

答案 4 :(得分:0)

尝试

index=[[test1,test2,test3],[test4,test5,test6],[test7,test8,test9]]
flat_index=[item for sublist in index for item in sublist]
if test5 is in flat_index:
    print True

另见Making a flat list out of list of lists in Python