python3获取列表某个重复元素所有索引值(enumerate)

python3 的index函数只能索引要查找元素的首个索引,这个在多数情况是不能满足索引要求的。而enumerate函数可以遍历所有元素,可以利用这个函数+列表推导式实现获取所有重复元素的索引值。实现方式如下:

listA=[1,2,3,2]  #比如要查找列表中的数字2。

indexA=[x for (x,m) in enumerate(listA) if m==2 ]

indexA

输出:[1,4]

可以写成函数以方便调用:

def indexA (listA,m):

    return [x for (x,m) in enumerate(listA) if m==2 ]

使用:

indexA([1,2,3,2] ,2)

输出:[1,4]

猜你喜欢

转载自blog.csdn.net/kim5659/article/details/108723053