在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()
方法。
原创文章,作者:未希,如若转载,请注明出处:https://www.kdun.com/ask/673240.html
本网站发布或转载的文章及图片均来自网络,其原创性以及文中表达的观点和判断不代表本网站。如有问题,请联系客服处理。
发表回复