python的sorted相关
Python 字典排序
在python里,字典是内置的数据类型,是个无序的存储结构,每一个元素是key-value对:
有关key的解释:
sorted(L,key=by_name)中的key即by_name函数处理的是L这个列表
的每个元素,所以by_name(t)的参数t就是L中的一个元素,
比如说('Lili',75)。所以return t[0]返回的是这个元组的第一个元素,
即名字Lili
>>> d
{9: 'xinzhou', 3: 'chen', 5: 'wuhan', 1: 'yadan'} >>> ss=sorted(d.items(),key=lambda d:d[0]) #主要看这里
>>> ss
[(1, 'yadan'), (3, 'chen'), (5, 'wuhan'), (9, 'xinzhou')]
>>> d
{9: 'xinzhou', 3: 'chen', 5: 'wuhan', 1: 'yadan'} >>> sss=sorted(d.items(),key=lambda d:d[1])
>>> sss
[(3, 'chen'), (5, 'wuhan'), (9, 'xinzhou'), (1, 'yadan')]
>>> sss=sorted(d.items(),key=lambda d:d[1],reverse=True) #主要看这里 >>> sss
[(1, 'yadan'), (9, 'xinzhou'), (5, 'wuhan'), (3, 'chen')]
>>> sss=sorted(d.items(),key=lambda d:d[1],reverse=False) >>> sss
[(3, 'chen'), (5, 'wuhan'), (9, 'xinzhou'), (1, 'yadan')]
dict1={'A': 9, 'C': 5, 'B': 1, 'E': 14, 'D': 3, 'G': 3, 'F': 3, 'I': 9, 'H': 7, 'J': 1, 'L': 2, 'O': 8, 'N': 3, 'P': 4, 'S': 10, 'R': 5, 'U': 1, 'T': 17, 'W': 1, 'V': 1}
#对字典按值排序,以元组的形式返回
print sorted(dict1.iteritems(),key=lambda dict1:dict1[1],reverse=True)
#对字典按键排序,以元组的形式返回
print sorted(dict1.iteritems(),key=lambda dict1:dict1[0],reverse=False)
参考下其他类型的排序:(估计python2)
>>> student_tuples = [
('john', 'A', 15),
('jane', 'B', 12),
('dave', 'B', 10),
]
>>> sorted(student_tuples, key=lambda student: student[2]) # sort by age
[('dave', 'B', 10), ('jane', 'B', 12), ('john', 'A', 15)]
例如:
>>> a=[(5,"chen"),(3,"hang"),(7,"wang"),(4,"yadan")]
>>> a
[(5, 'chen'), (3, 'hang'), (7, 'wang'), (4, 'yadan')]
>>> aa=sorted(a,key=lambda a:a[0],reverse=False)
>>> aa
[(3, 'hang'), (4, 'yadan'), (5, 'chen'), (7, 'wang')]
>>> aaa=sorted(a,key=lambda a:a[1],reverse=False)
>>> aaa
[(5, 'chen'), (3, 'hang'), (7, 'wang'), (4, 'yadan')]
dd
Python 字典排序
在python里,字典是内置的数据类型,是个无序的存储结构,每一个元素是key-value对:
dict1={'A': 9, 'C': 5, 'B': 1, 'E': 14, 'D': 3, 'G': 3, 'F': 3, 'I': 9, 'H': 7, 'J': 1, 'L': 2, 'O': 8, 'N': 3, 'P': 4, 'S': 10, 'R': 5, 'U': 1, 'T': 17, 'W': 1, 'V': 1} |
#对字典按值排序,以元组的形式返回print sorted(dict1.iteritems(),key=lambda dict1:dict1[1],reverse=True)#对字典按键排序,以元组的形式返回print sorted(dict1.iteritems(),key=lambda dict1:dict1[0],reverse=False) |
python的sorted相关的更多相关文章
- Python: sort,sorted,OrderedDict的用法
Python: sort,sorted,OrderedDict的用法 from http://stqdd.com/archives/427 by 莫亚菜 python对容器内数据的排序有两种,一种是容 ...
- Python中sorted()方法
Python中sorted()方法的用法 1.先说一下iterable,中文意思是迭代器. Python的帮助文档中对iterable的解释是:iteralbe指的是能够一次返回它的一个成员的对象.i ...
- python基础——sorted()函数
python基础——sorted()函数 排序算法 排序也是在程序中经常用到的算法.无论使用冒泡排序还是快速排序,排序的核心是比较两个元素的大小.如果是数字,我们可以直接比较,但如果是字符串或者两个d ...
- 【Python】 sorted函数
我们需要对List.Dict进行排序,Python提供了两个方法对给定的List L进行排序,方法1.用List的成员函数sort进行排序,在本地进行排序,不返回副本方法2.用built-in函数so ...
- NLP︱高级词向量表达(一)——GloVe(理论、相关测评结果、R&python实现、相关应用)
有很多改进版的word2vec,但是目前还是word2vec最流行,但是Glove也有很多在提及,笔者在自己实验的时候,发现Glove也还是有很多优点以及可以深入研究对比的地方的,所以对其进行了一定的 ...
- Python字符串的相关操作
1.大小写转换 判断字符串 s.isalnum() #所有字符都是数字或者字母 s.isalpha() #所有字符都是字母 s.isdigit() #所有字符都是数字 s.islower() #所有字 ...
- python中sorted()和set()去重,排序
前言 在看一个聊天机器人的神经网络模型训练前准备训练数据,需要对训练材料做处理(转化成张量)需要先提炼词干,然后对词干做去重和排序 words = sorted(list(set(words))) 对 ...
- [转].Python中sorted函数的用法
[Python] sorted函数 我们需要对List.Dict进行排序,Python提供了两个方法对给定的List L进行排序,方法1.用List的成员函数sort进行排序,在本地进行排序,不返回副 ...
- Python中sorted()方法的用法
Python中sorted()方法的用法 2012-12-24 22:01:14| 分类: Python |字号 订阅 1.先说一下iterable,中文意思是迭代器. Python的帮助文档中对i ...
随机推荐
- BFS 10.1.5.253 1502
http://10.1.5.253/acmhome/problemdetail.do?&method=showdetail&id=1502 //1502 #include <st ...
- Windows Shell Extension 系列文章
Windows Shell Extension 系列文章 http://www.codeproject.com/Articles/512956/NET-Shell-Extensions-Shell-C ...
- [置顶] 【Git入门之十三】Ubuntu和git
原创作品,转载请标明:http://blog.csdn.net/jackystudio/article/details/12374291 之前我们都是在Windows平台下操作git.现在我们改用Ub ...
- 使用Multipath进行多链路聚合并对聚合后的设备固定命名
使用Multipath进行多链路聚合并对聚合后的设备固定命名 1.启用Multipath: (1)启动multipathd服务 #service multipathd start 或者 #/etc/i ...
- GimageX
{LJ?Dragon}[标题]GimageX 中文版备份恢复工具 如今由微软发布的免费系统部署软件 imageX 则更受到高手们的喜爱,被誉为系统备份/还原的必备新神器.imageX 不仅可用来封装制 ...
- 关于OS_PRIO_SELF的说明
在看ucosii 中关于删除任务的函数 OSTaskDel 时看到 if (prio == OS_PRIO_SELF) { /* See ...
- pat 1060. Are They Equal (25)
题目意思直接,要求将两个数转为科学计数法表示,然后比较是否相同 不过有精度要求 /* test 6 3 0.00 00.00 test 3 3 0.1 0.001 0.001=0.1*10^-2 p ...
- Linux Terminal 控制终端的使用
1. Open new Terminal:Ctrl + Alt + T 或者 Ctrl + Shift + N 2. Open Tab:Ctrl + Shift + T 3. Close Tab:Ct ...
- iOS 独立开发记录(下)
侧边菜单栏 查看Github上相关实现,一开始选择的是SlideMenuControllerSwift,后来决定更改为自定义,使用更简洁的方式. 分离 分离之前的SliderMeanControlle ...
- HDU 4607 Park Visit(树的直径)
题目大意:给定一棵树,让求出依次访问k个点的最小花费,每条边的权值都为1. 思路:如果能一直往下走不回来,那么这个路径肯定是最小的,这就取决于给定的k,但是怎么确定这个能一直走的长度呢,其实这个就是树 ...