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]