当前位置:首页 > 行业动态 > 正文

python列表排序返回索引_排序

在Python中,我们可以使用内置的sorted()函数和列表的sort()方法对列表进行排序,这两种方法只返回排序后的列表,而不返回原始索引,如果我们想要得到排序后元素的原始索引,可以使用numpy库的argsort()函数。

以下是一个例子:

import numpy as np
定义一个列表
lst = [3, 1, 4, 1, 5, 9, 2, 6, 5, 3, 5]
使用numpy的argsort()函数得到排序后的索引
indices = np.argsort(lst)
print("原始列表:", lst)
print("排序后的索引:", indices)

在这个例子中,argsort()函数返回的是原始列表元素从小到大排序后的索引。lst中最小的元素是1,它在列表中的索引是1,所以indices[0]的值是1,同样,第二小的元素是2,它在列表中的索引是6,所以indices[1]的值是6,以此类推。

注意:argsort()函数返回的是一个NumPy数组,如果需要转换为Python列表,可以使用tolist()方法。

0