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找出文件中使用率最高的汉字实例详解
Jun 03 Python
Python算法之求n个节点不同二叉树个数
Oct 27 Python
Django使用Mysql数据库已经存在的数据表方法
May 27 Python
Python爬虫PyQuery库基本用法入门教程
Aug 04 Python
Python简单处理坐标排序问题示例
Jul 11 Python
Python lxml模块的基本使用方法分析
Dec 21 Python
tensorflow之获取tensor的shape作为max_pool的ksize实例
Jan 04 Python
Anaconda+Pycharm环境下的PyTorch配置方法
Mar 13 Python
深入理解Python 多线程
Jun 16 Python
Python tkinter实现日期选择器
Feb 22 Python
Python制作一个随机抽奖小工具的实现
Jul 07 Python
python解析json数据
Apr 29 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判断是否有Get参数的方法
2014/05/05 PHP
PHP编写登录验证码功能 附调用方法
2016/05/19 PHP
PHP实现小偷程序实例
2016/10/31 PHP
laravel中的fillable和guarded属性详解
2019/10/23 PHP
JS宝典学习笔记(下)
2007/01/10 Javascript
Prototype Date对象 学习
2009/07/12 Javascript
JavaScript 利用Cookie记录用户登录信息
2009/12/08 Javascript
jQuery Ajax异步处理Json数据详解
2013/11/05 Javascript
JavaScript中的console.log()函数详细介绍
2014/12/29 Javascript
Javascript递归打印Document层次关系实例分析
2015/05/15 Javascript
jquery分割字符串的方法
2015/06/24 Javascript
Javascript动画效果(3)
2016/10/11 Javascript
基于node.js的fs核心模块读写文件操作(实例讲解)
2017/09/10 Javascript
js中document.write和document.writeln的区别
2018/03/11 Javascript
vue项目打包部署到服务器的方法示例
2018/08/27 Javascript
浅谈Vue数据响应
2018/11/05 Javascript
jQuery实现文本显示一段时间后隐藏的方法分析
2019/06/20 jQuery
JS前端知识点总结之内置对象,日期对象和定时器相关操作
2019/07/05 Javascript
element el-table表格的二次封装实现(附表格高度自适应)
2021/01/19 Javascript
JavaScript实现前端倒计时效果
2021/02/09 Javascript
Python OpenCV获取视频的方法
2018/02/28 Python
关于Tensorflow中的tf.train.batch函数的使用
2018/04/24 Python
Python基于Floyd算法求解最短路径距离问题实例详解
2018/05/16 Python
使用python批量修改文件名的方法(视频合并时)
2020/03/24 Python
Python (Win)readline和tab补全的安装方法
2019/08/27 Python
用Python解数独的方法示例
2019/10/24 Python
Python+OpenCV实现实时眼动追踪的示例代码
2019/11/11 Python
Python基础之字符串操作常用函数集合
2020/02/09 Python
scrapy爬虫:scrapy.FormRequest中formdata参数详解
2020/04/30 Python
HTML5 Canvas之测试浏览器是否支持Canvas的方法
2015/01/01 HTML / CSS
白俄罗斯大卖场:21vek.by
2019/07/25 全球购物
杰夫·班克斯男士服装网上商店:Jeff Banks
2019/10/24 全球购物
个人工作作风整改措施思想汇报
2014/10/13 职场文书
2014年辅导员工作总结
2014/11/18 职场文书
清洁工个人工作总结
2015/03/05 职场文书
掌握这项技巧,一年阅读300本书不是梦
2019/09/12 职场文书