如何修复列表中重复项的索引
How to fix the index of duplicate in a list
我想做一个列表,可以按递减值存储列表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]
"Return 列表 index() 中的值
index() 方法 returns 列表中给定元素的索引。
如果未找到该元素,则会引发 ValueError 异常。
注意:index()方法只returns第一次出现的匹配元素。(https://www.programiz.com/python-programming/methods/list/index)"
https://www.geeksforgeeks.org/enumerate-in-python/
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)
我想做一个列表,可以按递减值存储列表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]
"Return 列表 index() 中的值 index() 方法 returns 列表中给定元素的索引。 如果未找到该元素,则会引发 ValueError 异常。 注意:index()方法只returns第一次出现的匹配元素。(https://www.programiz.com/python-programming/methods/list/index)"
https://www.geeksforgeeks.org/enumerate-in-python/
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)