这必须是一个非常基本的问题,因此请耐心等待。我有一个这样的列表列表:
l = [[1, 2, 3], [4, 5, 6], [7, 8, 9], [10, 11, 12]]
我要访问index = 6
,然后获取output = 7
。
答案 0 :(得分:3)
对不起,没有看到您要查找子列表的第一和第二位置。
然后,您可以将其合并到列表组合中。时间复杂度为O(N)
。
s = [5,6]
A=[[1,2,3,4],
[5,6,7,8],
[9,10,11,12]]
print([index for index,lst in enumerate(A) if lst[:2]==s][0])
结果:
1
但是,如果您的列表按其第一个索引增加。您可以使用二进制搜索来实现O(log(N))
的时间复杂度。
答案 1 :(得分:3)
尝试一下:
s= [9,10]
a2 = next(c for c,e in enumerate(A) if e[:2]==s)