python中dict字典的查询键值对 遍历 排序 创建 访问 更新 删除基础操作方法


Posted in Python onSeptember 13, 2018

字典是另一种可变容器模型,且可存储任意类型对象。

字典的每个键值(key=>value)对用冒号(:)分割,每个对之间用逗号(,)分割,整个字典包括在花括号({})中 ;

字典值可以没有限制地取任何python对象,既可以是标准的对象,也可以是用户定义的;但键不行,如果同一个键被赋值两次,后一个值会被记住。

值可以取任何数据类型,但键必须是不可变的,如字符串,数字或元组(列表这样的可变类型不能作为键)。

一、字典的创建、访问:

dict = {'Name': 'Zara', 'Age': 7, 'Class': 'First'};

dict2 = { }; //空字典

print "dict['Name']: ", dict['Name'];

print "dict['Age']: ", dict['Age'];

字典中包含列表:dict={'yangrong':['23','IT'],"xiaohei":['22','dota']}

字典中包含字典:dict={'yangrong':{"age":"23","job":"IT"},"xiaohei":{"'age':'22','job':'dota'"}}

二、字典的修改、添加:

dict['Age'] = 8; # update existing entry

dict['School'] = "DPS School"; # Add new entry

三、字典的删除:

del dict['Name'] # 删除键是'Name'的条目

dict.clear() # 清空字典所有条目

del dict  # 删除字典

四、查询字典中是否包含指定键:

dict.has_key(k)

如果键在字典dict里返回true,否则返回false

查看所有键值对:dict.keys()dict.values()dict.items();返回值的类型为列表

五、遍历字典

for d,x in dict.items():

print "key:"+d+",value:"+x

for k in dict.keys():

print "key:"+k+",value:"+dict[k]

六、字典排序:

按照key进行排序

print sorted(dict1.items(), key=lambda d: d[0])

或:

sorted(d.items(), lambda x, y: cmp(x[0], y[0]))

反序:

sorted(d.items(), lambda x, y: cmp(x[0], y[0]), reverse=True)

按照value进行排序

print sorted(dict1.items(), key=lambda d: d[1])

或:

sorted(d.items(), lambda x, y: cmp(x[1], y[1]))

反序:

sorted(d.items(), lambda x, y: cmp(x[1], y[1]), reverse=True)

下面说一下list,dict与set的区别

list:

按距离差访问元素

顺序访问,速度慢

存储空间要求小

dict:

按索引访问元素

需要大空间,但访问很快

set:

元素不可重复

其它和dict基本类似

集合支持一系列标准操作,包括并集、交集、差集和对称差集,例如: 

a = t | s          # t 和 s的并集

b = t & s          # t 和 s的交集

c = t ? s          # 求差集(项在t中,但不在s中)

d = t ^ s          # 对称差集(项在t或s中,但不会同时出现在二者中)

灵活使用字典将对你的Python编程工作带来很大的帮助,大家一定要熟练掌握Python字典的使用方法

Python 相关文章推荐
Python生成不重复随机值的方法
May 11 Python
python递归查询菜单并转换成json实例
Mar 27 Python
python根据unicode判断语言类型实例代码
Jan 17 Python
详解python多线程之间的同步(一)
Apr 03 Python
python opencv将图片转为灰度图的方法示例
Jul 31 Python
Django中使用haystack+whoosh实现搜索功能
Oct 08 Python
Python使用Pandas库常见操作详解
Jan 16 Python
Tensorflow之梯度裁剪的实现示例
Mar 08 Python
利用Python自动化操作AutoCAD的实现
Apr 01 Python
Keras中的多分类损失函数用法categorical_crossentropy
Jun 11 Python
Python Socket多线程并发原理及实现
Dec 11 Python
Sentry的安装、配置、使用教程(Sentry日志手机系统)
Jul 23 Python
Python字典创建 遍历 添加等实用基础操作技巧
Sep 13 #Python
python单例模式获取IP代理的方法详解
Sep 13 #Python
如何利用python制作时间戳转换工具详解
Sep 12 #Python
Python get获取页面cookie代码实例
Sep 12 #Python
python读取和保存图片5种方法对比
Sep 12 #Python
python3 拼接字符串的7种方法
Sep 12 #Python
python简单操作excle的方法
Sep 12 #Python
You might like
PHP生成便于打印的网页
2006/10/09 PHP
Ajax PHP简单入门教程代码
2008/04/25 PHP
php AJAX实例根据邮编自动完成地址信息
2008/11/23 PHP
PHP读取PPT文件的方法
2015/12/10 PHP
微信支付开发告警通知实例
2016/07/12 PHP
Laravel5.5 数据库迁移:创建表与修改表示例
2019/10/23 PHP
JQuery通过Ajax提交表单并返回结果
2011/07/31 Javascript
仿百度输入框智能提示的js代码
2013/08/22 Javascript
javascript跨浏览器的属性判断方法
2014/03/16 Javascript
BootstrapTable与KnockoutJS相结合实现增删改查功能【二】
2016/05/10 Javascript
使用JavaScript实现弹出层效果的简单实例
2016/05/31 Javascript
JS实现简单的右下角弹出提示窗口完整实例
2016/06/21 Javascript
jQuery+CSS3实现仿花瓣网固定顶部位置带悬浮效果的导航菜单
2016/09/21 Javascript
基于pako.js实现gzip的压缩和解压功能示例
2017/06/13 Javascript
Vuex利用state保存新闻数据实例
2017/06/28 Javascript
详解React-Native解决键盘遮挡问题(Keyboard遮挡问题)
2017/07/13 Javascript
JS库particles.js创建超炫背景粒子插件(附源码下载)
2017/09/13 Javascript
详解nodejs http请求相关总结
2019/03/31 NodeJs
js针对图片加载失败的处理方法分析
2019/08/24 Javascript
JavaScript中this函数使用实例解析
2020/02/21 Javascript
浅谈JavaScript中等号、双等号、 三等号的区别
2020/08/06 Javascript
python 将列表中的字符串连接成一个长路径的方法
2018/10/23 Python
Python对象中__del__方法起作用的条件详解
2018/11/01 Python
python生成带有表格的图片实例
2019/02/03 Python
基于树莓派的语音对话机器人
2019/06/17 Python
基于python求两个列表的并集.交集.差集
2020/02/10 Python
Pycharm+Python工程,引用子模块的实现
2020/03/09 Python
python爬虫scrapy框架的梨视频案例解析
2021/02/20 Python
css3加js做一个简单的3D行星运转效果实例代码
2017/01/18 HTML / CSS
Sneaker Studio捷克:购买运动鞋
2018/07/08 全球购物
八一慰问活动方案
2014/02/07 职场文书
先进个人事迹材料
2014/12/29 职场文书
原告离婚代理词
2015/05/23 职场文书
2015年试用期工作总结范文
2015/05/28 职场文书
2016年“我们的节日·端午节”活动总结
2016/04/01 职场文书
详解Mysq MVCC多版本的并发控制
2022/04/29 MySQL