1、 准备知识:
在python里,字典dictionary是内置的数据类型,是个无序的存储结构,每一元素是key-value对:
如:dict = {‘username’:‘password’,‘database’:‘master’},其中‘username’和‘database’是key,而‘password’和‘master’是value,可以通过d[key]获得对应值value的引用,但是不能通过value得到key。
对于dictionnary,需知道以下几点注意事项:
a、 dictionary 的 key 是大小写敏感的;
b、 一个dictionary中不能有重复的 key;
c、 dictionary是无序的,没有元素顺序的概念,它们只是序偶的简单排列。
2、 字典排序实现:
参见cookbook,Recipe 5.1. Sorting a Dictionary讲述了字典排序的方法;
前面已说明dictionary本身没有顺序概念,但是总是在某些时候,但是我们常常需要对字典进行排序,怎么做呢?下面告诉你:
方法1:最简单的方法,排列元素(key/value对),然后挑出值。字典的items方法,会返回一个元组的列表,其中每个元组都包含一对项目——键与对应的值。此时排序可以sort()方法。
def sortedDictValues1(adict):
items = adict.items()
items.sort()
return [value for key, value in items]
方法2:使用排列键(key)的方式,挑出值,速度比方法1快。字典对象的keys()方法返回字典中所有键值组成的列表,次序是随机的。需要排序时只要对返回的键值列表使用sort()方法。
def sortedDictValues1(adict):
keys = adict.keys()
keys.sort()
return [adict[key] for key in keys]
方法3:通过映射的方法去更有效的执行最后一步
def sortedDictValues1(adict):
keys = adict.keys()
keys.sort()
return map(adict.get,keys)
方法4:对字典按键排序,用元组列表的形式返回,同时使用lambda函数来进行;
sorted(iterable[, cmp[, key[, reverse]]]
cmp和key一般使用lambda
如:
>>> d={"ok":1,"no":2}
对字典按键排序,用元组列表的形式返回
>>> sorted(d.items, key=lambda d:d[0])
[('no', 2), ('ok', 1)]
对字典按值排序,用元组列表的形式返回
>>> sorted(d.items, key=lambda d:d[1])
[('ok', 1), ('no', 2)]
分享到:
相关推荐
该文档主要是使用基于字典的方法进行情感分类,运行文件为:ID_based.py
3-python快速入门3-python快速入门3-python快速入门3-python快速入门3-python快速入门3-python快速入门3-python快速入门3-python快速入门3-python快速入门3-python快速入门3-python快速入门3-python快速入门3-python...
python字符串加密-29-字典拆包.ev4.rar
原来是通过命令行下载的docx安装包还没有完全兼容python3,估计这个安装包还只兼容python 2(python2 和python3差别还是挺大的,虽然现在python 3出来很久了,但是不少三方库还没有更新),因此需要自己找一个兼容的包...
第七章 Python字典和集合 字典的表示 字典的使用 1 2 5 字典的遍历和嵌套 集合的表示和使用 4 字典的相关方法 3 第7章-python字典和集合-python基础-快速入门-课件教程全文共31页,当前为第1页。 1 字典的表示 ...
python入门-11-字典的总结.ev4.rar
python教程-01-字典的应用场景.ev4.rar
python教程-03-字典常用操作之新增.ev4.rar
python学习教程--05-字典常用操作之修改.ev4.rar
python学习教程--06-字典常用操作之查找.ev4.rar
python学习笔记,包含python字典-集合-不可变集合-赋值机制
最近ubuntu14.04出了问题,pkg-catkin-pkg无法下载,我7月底重装了一次Ubuntu14.04,安装ros lidigo时报错,依赖python-catkin-pkg,但它不会被安装,我刚开始发现这个问题时试过换源,重装系统均不成功,后面去官方...
python入门-10-字典的循环遍历之键值对(拆包).ev4.rar
python小游戏--天天酷跑1.0,简单但有趣,我已经打包好了,大家下载就可以玩了。
python教程-02-创建字典的语法.ev4.rar
1-3-Python语言 1-4-Python开发环境配置 1-5-基本程序设计方法 1-6-理解问题的计算部分 1-7-温度转换程序实例 2-1-Python程序元素分析 2-2-程序编写模板 2-3-turtle库和蟒蛇绘制程序 2-4-蟒蛇绘制程序分析 2-5-函数...
1-3-Python语言 1-4-Python开发环境配置 1-5-基本程序设计方法 1-6-理解问题的计算部分 1-7-温度转换程序实例 2-1-Python程序元素分析 2-2-程序编写模板 2-3-turtle库和蟒蛇绘制程序 2-4-蟒蛇绘制程序分析 2-5-函数...
1-3-Python语言 1-4-Python开发环境配置 1-5-基本程序设计方法 1-6-理解问题的计算部分 1-7-温度转换程序实例 2-1-Python程序元素分析 2-2-程序编写模板 2-3-turtle库和蟒蛇绘制程序 2-4-蟒蛇绘制程序分析 2-5-函数...
python保留两位小数-32-列表内字典数据排序.ev4.rar
Python 3.11.4(64-bit)软件安装