我有一个列表是:
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]
如果索引已被使用,它将跳过并继续索引下一个重复值并进一步执行。任何帮助,将不胜感激。提前致谢。
这样的事情可能会起作用:
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] 删除。
我来说两句