Python 如何修复列表中重复项的索引
我想制作一个列表,可以根据递减的值来存储列表a的索引 这是我的代码: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 = [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)