alex_bn_lee

导航

< 2025年3月 >
23 24 25 26 27 28 1
2 3 4 5 6 7 8
9 10 11 12 13 14 15
16 17 18 19 20 21 22
23 24 25 26 27 28 29
30 31 1 2 3 4 5

统计

【357】sorted 函数高级用法

参考:Python 内置函数sorted()在高级用法 - Brad1994 - 博客园  

sorted 函数主要实现的就是对于可迭代对象进行排序,对于一维数据排序很好理解与实现,直接调用即可,本文主要讲解对于二维数据的调用,以及字典的调用。

语法如下: sorted(iterable[, cmp[, key[, reverse]]]) 

  • iterable:可迭代对象,列表、数组、字典
  • key:对于二维数据指定需要排序的列
  • reverse:True 降序,False 升序(默认)

示例如下:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
>>> list1 = [[2,3],
         [4,2],
         [8,1],
         [3,4],
         [5,9]]
>>> sorted(list1, key=lambda x:x[0])
[[2, 3], [3, 4], [4, 2], [5, 9], [8, 1]]
>>> sorted(list1, key=lambda x:x[1])
[[8, 1], [4, 2], [2, 3], [3, 4], [5, 9]]
 
>>> array1 = np.array(list1)
>>> array1
array([[2, 3],
       [4, 2],
       [8, 1],
       [3, 4],
       [5, 9]])
>>> np.array(sorted(array1, key=lambda x:x[0]))
array([[2, 3],
       [3, 4],
       [4, 2],
       [5, 9],
       [8, 1]])
>>> np.array(sorted(array1, key=lambda x:x[1]))
array([[8, 1],
       [4, 2],
       [2, 3],
       [3, 4],
       [5, 9]])
 
>>> dict = {'e': 1, 'd': 6, 'b': 3}
>>> sorted(dict.items(), key=lambda x:x[0])
[('b', 3), ('d', 6), ('e', 1)]
>>> sorted(dict.items(), key=lambda x:x[1])
[('e', 1), ('b', 3), ('d', 6)]

主要是通过 lambda 函数说明需要排序的列,对于字典要特别注意,需要使用 .items() 来实现

posted on   McDelfino  阅读(277)  评论(0编辑  收藏  举报

编辑推荐:
· AI与.NET技术实操系列(二):开始使用ML.NET
· 记一次.NET内存居高不下排查解决与启示
· 探究高空视频全景AR技术的实现原理
· 理解Rust引用及其生命周期标识(上)
· 浏览器原生「磁吸」效果!Anchor Positioning 锚点定位神器解析
阅读排行:
· DeepSeek 开源周回顾「GitHub 热点速览」
· 记一次.NET内存居高不下排查解决与启示
· 物流快递公司核心技术能力-地址解析分单基础技术分享
· .NET 10首个预览版发布:重大改进与新特性概览!
· .NET10 - 预览版1新功能体验(一)
历史上的今天:
2018-01-24 【297】IDL 过程、函数&关键字参数
2018-01-24 【296】Python 默认 IDE 修改 (Win & Mac)
点击右上角即可分享
微信分享提示