在Python中,如果你想查找一个列表中某个子列表的所有匹配项的索引,可以使用以下方法:
以下是一个示例代码,展示了如何查找子列表的所有匹配项的索引:
def find_sublist_indices(main_list, sublist):
indices = []
sub_len = len(sublist)
for i in range(len(main_list) - sub_len + 1):
if main_list[i:i+sub_len] == sublist:
indices.append(i)
return indices
# 示例使用
main_list = [1, 2, 3, 4, 5, 2, 3, 6, 2, 3, 7]
sublist = [2, 3]
print(find_sublist_indices(main_list, sublist)) # 输出: [1, 5, 8]
find_sublist_indices
函数接受两个参数:主列表 main_list
和要查找的子列表 sublist
。indices
来存储找到的索引。for
循环遍历主列表,直到倒数第 sub_len
个元素(因为再往后就不可能有完整的子列表了)。indices
列表中。def find_sublist_indices(main_list, sublist):
if not sublist:
return []
indices = []
sub_len = len(sublist)
for i in range(len(main_list) - sub_len + 1):
if main_list[i:i+sub_len] == sublist:
indices.append(i)
return indices
通过这种方式,可以有效地查找并处理列表中的子列表匹配项。
领取专属 10元无门槛券
手把手带您无忧上云