插件窝 干货文章 python实现对数组按指定列排序

python实现对数组按指定列排序

class 数组 排序 li 851    来源:    2024-10-17

python对数组按指定列排序

用到的函数就是sorted(iterable, key=None, reverse=False) 

参数介绍如下:

  • iterable:就是将要被排序的任何可迭代对象(例如list)
  • key:写一个lambda函数,指定每步迭代将要被作为排序标准的元素
  • reverse:默认为False,即升序排列,若为True则为降序排序

极简例子

list1 = [[1,20],[2,3],[1,5]]
new_list = sorted(list1, key = lambda x:x[1])
print(new_list)

output:

[[2, 3], [1, 5], [1, 20]]

python 数组排序并找出其索引

numpy数组排序

arr = [1, 3, 5, 2, 4, 6]
arr = np.array(arr)
print(np.sort(arr))
print(np.argsort(arr)) # 正序输出索引,从小到大
print(np.argsort(-arr))  # 逆序输出索引,从大到小

输出结果:

普通数组排序

总结

以上为个人经验,希望对您有所帮助。