Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/339.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python搜索列表列表中存在多个值_Python - Fatal编程技术网

Python搜索列表列表中存在多个值

Python搜索列表列表中存在多个值,python,Python,我想直接举个例子来更好地解释 search1 = 'test' search2 = 'value' search_array = [[], [], [], [], ....] 我有一个不同长度和值的列表。如果search1和search2都存在,我想查找列表的索引号。目前,我正在做嵌套循环,这在性能方面非常慢,列表中有50000个项目。如果您可以更改数据结构,您可以使用集合列表,因此搜索的时间复杂度变为O(N)而不是O(N*m): search1='test' search2='value'

我想直接举个例子来更好地解释

search1 = 'test'
search2 = 'value'

search_array = [[], [], [], [], ....]

我有一个不同长度和值的列表。如果search1和search2都存在,我想查找列表的索引号。目前,我正在做嵌套循环,这在性能方面非常慢,列表中有50000个项目。

如果您可以更改数据结构,您可以使用集合列表,因此搜索的时间复杂度变为O(N)而不是O(N*m):

search1='test'
search2='value'
搜索数组=[set(),set(),set(),set(),…]
要查找索引,您需要在运算符和一个循环中找到:

indices = [i for (i, s) in enumerate(search_array) if search1 in s and search2 in s]