python中sorted排序后返回同时返回下标

numpy中有函数argsort来返回排序后的下标

pytorch中的torch.sort本身就能返回排序后的下标

Python中没有直接调用的接口,怎么办呢?

用enumerate再排序就可以了

nums = [4, 1, 5, 2, 9, 6, 8, 7]
sorted_nums = sorted(enumerate(nums), key=lambda x: x[1])
idx = [i[0] for i in sorted_nums]
nums = [i[1] for i in sorted_nums]
原文地址:https://www.cnblogs.com/sbj123456789/p/10951598.html