python字典的排序,按key排序和按value排序---sorted()

>>> d
{‘a‘: 5, ‘c‘: 3, ‘b‘: 4}

>>> d.items()
[(‘a‘, 5), (‘c‘, 3), (‘b‘, 4)]

字典的元素是成键值对出现的,字典的排序可用sorted,用关键字key指定排序依据的值--key或者value

按照值排序:

#把d.items()所对应的列表的每个元祖的第二个元素(value)传到lambda函数进行排序
>>> s=sorted(d.items(),key=lambda x:x[1])
>>> s
[(‘c‘, 3), (‘b‘, 4), (‘a‘, 5)]

按照key排序:

#把d.items()所对应的列表的每个元祖的第一个元素(key)传到lambda函数进行排序
>>> s=sorted(d.items(),key=lambda x:x[0])
>>> s
[(‘a‘, 5), (‘b‘, 4), (‘c‘, 3)]

原文地址:https://www.cnblogs.com/xiaxiaoxu/p/9743357.html

时间: 2024-10-27 07:59:32

python字典的排序,按key排序和按value排序---sorted()的相关文章

python练习:字典value值排序,key值排序

#字典value值排序,key值排序 from random import * dict1 = {x:randint(5,12) for x in "aijwt"} dict2 = {randint(5,12):y for y in "aibjwte"} print ('dict1:',dict1) print ('dict2:',dict2) print ("将字典按value倒序显示,办法(collections的Counter):") fr

<转>python字典排序 关于sort()、reversed()、sorted()

一.Python的排序 1.reversed() 这个很好理解,reversed英文意思就是:adj. 颠倒的:相反的:(判决等)撤销的 print list(reversed(['dream','a','have','I'])) #['I', 'have', 'a', 'dream'] 2.让人糊涂的sort()与sorted() 在Python 中sorted是内建函数(BIF),而sort()是列表类型的内建函数list.sort(). sorted() sorted(iterable[,

python 字典排序 关于sort()、reversed()、sorted()

一.Python的排序 1.reversed() 这个很好理解,reversed英文意思就是:adj. 颠倒的:相反的:(判决等)撤销的 print list(reversed(['dream','a','have','I'])) #['I', 'have', 'a', 'dream'] 2.让人糊涂的sort()与sorted() 在Python 中sorted是内建函数(BIF),而sort()是列表类型的内建函数list.sort(). sorted() sorted(iterable[,

Python 字典 列表 嵌套 复杂排序大全

https://blog.csdn.net/ray_up/article/details/42084863 一: 字典排序 解析: 使用sorted 方法, 排序后的结果为一个元组. 可以字符串排序(那数字肯定更没问题了!) 1:  按照键值(value)排序 a = {'a': 'China', 'c': 'USA', 'b': 'Russia', 'd': 'Canada'}b = sorted(a.items(), key=lambda x: x[1], reverse=True)结果:[

按NSDictionary的key来对其进行排序

按NSDictionary的key来对其进行排序: 先将dict的allkeys赋给一个数组,然后通过sortedArrayUsingComparator:方法对数组排序,然后遍历数组取字典对应key的值就ok int i = 0; NSArray *keys = [dict allKeys]; NSArray *sortedArray = [keys sortedArrayUsingComparator:^NSComparisonResult(id obj1, id obj2) { retur

python字典嵌套字典的情况下获取某个key的value

最近在用python写接口的测试程序,期间用到解析字典获取某个key的value,由于多个接口返回的字典格式不是固定的并存在多层嵌套的情况.在字典的方法中也没有找到可直接达到目的的方法(也可能是我对字典的方法了解的不深的缘故),于是自己写了个程序. 1 #coding: utf-8 2 import types 3 4 #获取字典中的objkey对应的值,适用于字典嵌套 5 #dict:字典 6 #objkey:目标key 7 #default:找不到时返回的默认值 8 def dict_get

Java中Map根据键值(key)或者值(value)进行排序实现

我们都知道,java中的Map结构是key->value键值对存储的,而且根据Map的特性,同一个Map中 不存在两个Key相同的元素,而value不存在这个限制.换句话说,在同一个Map中Key是唯一的,而value不唯一.Map是一个接口,我们不能 直接声明一个Map类型的对象,在实际开发中,比较常用的Map性数据结构是HashMap和TreeMap,它们都是Map的直接子类.如果考虑到存取 效率的话,建议使用HashMap数据结构,而如果需要考虑到Key的顺序,建议使用TreeMap,但是

OC 之字典/数组混合使用(删除元素 描述器排序)

注:字典在数组内排序用描述器排序,遍历用字典对象输出!!!!!! NSArray *[email protected][@{@"name":@"Tim Cook",@"age":@"24",@"sex":@"female",@"score":@"89"},@{@"name":@"Jony Ive",@&quo

java Map 之 排序(key,value)

一:起因: (1)现实中需要Map容器进行排序的情况很多很多:因为Map<key,value>键值对的存储结构特别是HashMap的结构是非常优秀的,数据存储就难免对其进行排序: (2)数据处理,只要用到映射关系的,离不开Map,这在数据处理中是非常实用的,而排序是对数据的进一步处理: (3)Map排序的方式有很多种,两种比较常用的方式:按键排序(sort by key), 按值排序(sort by value) 二:排序的算法 (1)按键排序 jdk内置的java.util包下的TreeMa