列表中重复元素的顺序索引

Sukanya kamboj

我有一个列表是:

a = [100、200、200、400、500、600、600、700、900、1000、400、200、500]

如果我尝试使用以下方法在“ a”中查找值的索引:

xlist=[]
for value in a:
    x = np.array(a.index(value), value)
    xlist.append(x)
print(xlist)

它给了我

xlist = [0、1、1、3、4、5、5、7、8、9、3、1、4]

相反,我想要一个为每个重复值也提供唯一索引的列表。像这样:

xlist = [0、1、2、3、4、5、6、7、8、9、10、11、12]

如果索引已被使用,它将跳过并继续索引下一个重复值并进一步执行。任何帮助,将不胜感激。提前致谢。

Mayank porwal

这样的事情可能会起作用:

In [1030]: a = [100, 200, 200, 400, 500, 600, 600, 700, 900, 1000, 400, 200, 500]
In [1036]: idx = []

In [1037]: for index, val in enumerate(a):
      ...:     idx.append(index)

In [1038]: idx
Out[1038]: [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12]

list comprehensions用于1行命令:

In [1042]: idx = [index for index,val in enumerate(a)]

适用于python2和python3。

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章