python3 的index函数只能索引要查找元素的首个索引,这个在多数情况是不能满足索引要求的。而enumerate函数可以遍历所有元素,可以利用这个函数+列表推导式实现获取所有重复元素的索引值。实现方式如下:
listA=[1,2,3,2] #比如要查找列表中的数字2。
indexA=[x for (x,y) in enumerate(listA) if y==m ]
indexA
输出:[1,4]
可以写成函数以方便调用:
def indexA (listA,m):
return [x for (x,y) in enumerate(listA) if y==m ]
使用:
indexA([1,2,3,4,3,2,2] ,2)
输出:[1, 5, 6]
indexA([1,2,3,4,3,2,2],3)
输出:[2, 4]
本文介绍了一种使用Python的enumerate函数结合列表推导式的方法,来查找并返回列表中重复元素的所有索引位置,适用于需要获取全部匹配项的应用场景。
&spm=1001.2101.3001.5002&articleId=108723053&d=1&t=3&u=1287a3b1a9d9467cad4bef0819b23882)
5446

被折叠的 条评论
为什么被折叠?



