Python 如何修复列表中重复项的索引

Python 如何修复列表中重复项的索引,python,list,indexing,duplicates,element,Python,List,Indexing,Duplicates,Element,我想制作一个列表,可以根据递减的值来存储列表a的索引 这是我的代码: a = [1,2,2,6,7] b = deepcopy(a) b.sort(reverse = True) position = [] for counter in range(len(a)): position_highest = b[counter] position_fit = a.index(position_highest) position.append(position_fit) prin

我想制作一个列表,可以根据递减的值来存储列表a的索引

这是我的代码:

a = [1,2,2,6,7]
b = deepcopy(a)
b.sort(reverse = True)
position = []

for counter in range(len(a)):
   position_highest = b[counter]
   position_fit = a.index(position_highest)
   position.append(position_fit)

print(position)
代码给了我这样的结果 [4,3,1,1,0]

我能知道如何处理副本以便在这样的列表中得到结果吗 [4,3,1,2,0]

“列表索引()的返回值” index()方法返回列表中给定元素的索引。 如果未找到元素,则引发ValueError异常。 注意:index()方法只返回匹配元素的第一次出现。()


[4,3,2,1,0]
也有效吗?是的,一个
[y代表uu,y在排序中((x[:-1]代表枚举(a)中的x),reverse=True)]
非常感谢你,我在这里呆了一整天。你真是个救世主
import copy

a = [1,2,2,6,7]
b = copy.deepcopy(a)
b.sort(reverse = True)
position = []


arr=[]
for i in enumerate(b):# a[7, 6, 2, 2, 1]
    ''' 
    ind val
    (0, 7)
    (1, 6)
    (2, 2)
    (3, 2)
    (4, 1)
    '''
    arr.append(i[0])
position=arr[::-1]
'''
a=  [1,2,2,6,7]
ind=[0,1,2,3,4]
reverse ...
b=   [7,6,2,2,1]
ind= [0,1,2,3,4]
reverse ...
resul=[4,3,2,1]
'''

print(position)