python 字典数组排序_python如何对字典排序

Python字典容器

python中的字典同其他语言中的字典作用一样,都是用来存储数据的容器。

只不过不同于其他序列型数据用下标来访问其中的对象,而是以关键字key来访问其中的对象value。另外,字典也被称为关联数组或者哈希表。

字典的排序

有时候需要对生成的字典的结果按照key或者value进行排序,主要用到的方法就是python的内置函数sorted()。

sorted()函数的作用是对所有可迭代的对象进行排序操作的函数。sorted(iterable, cmp=None, key=None, reverse=False)

参数说明:

iterable:是可迭代的数据类型。

cmp:是用于比较的函数,将key指定的关键字通过该函数规定的比较规则进行比较。有点类似java中的Comparable抽象类中的compareTo()方法。传递两个参数,例如f(a,b),指定a和b的逻辑比较规则,结果返回正数、负数或者零来分别表示大于、小于和等于。

key:用于进行比较的数据。

reverse:排序规则,默认是True降序,或者设置为False来升序。

按照key值进行排序

当iterable传入的dict时,dict返回的是对key迭代,所以得到的排序结果也是对key排序后的列表。sorted_dict = sorted(dict, key=lambda x:x[0])

print(sorted_dict)['LiSi', 'WangWu', 'ZhangSan', 'ZhaoLiu']

按照value值进行排序

按照value排序时,只需把key迭代对象选择为x[1]就可以了。sorted_dict = sorted(dict.items(), key=lambda x:x[1], reverse=True)

print(sorted_dict)[('LiSi', 10), ('WangWu', 5), ('ZhaoLiu', 4), ('ZhangSan', 2)]

其中,lambda匿名函数的作用类似:def f(x):

return x[1]

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值