在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)