可以通过以下步骤实现:
index_dict
用于存储每个元素第一次出现的索引。enumerate
函数遍历列表或其他可迭代对象,并获取每个元素和其对应的索引。index_dict
中存在。如果存在,则表示这是重复项,将当前索引追加到对应的值(一个列表)中。index_dict
中,则将其作为键,将当前索引作为值初始化一个新的列表。index_dict
,将值为多个索引的键找出并返回,这些键即为重复项的索引。以下是一个示例代码:
def find_duplicate_indexes(lst):
index_dict = {}
for i, element in enumerate(lst):
if element in index_dict:
index_dict[element].append(i)
else:
index_dict[element] = [i]
duplicate_indexes = [indexes for indexes in index_dict.values() if len(indexes) > 1]
return duplicate_indexes
# 示例用法
my_list = [1, 2, 3, 4, 5, 2, 6, 3, 7, 8, 5]
duplicate_indexes = find_duplicate_indexes(my_list)
print(duplicate_indexes)
这个示例将会输出 [[1, 5], [2, 7], [4, 10]]
,表示列表 my_list
中重复的元素的索引。
领取专属 10元无门槛券
手把手带您无忧上云