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 相关文章推荐
在Windows系统上搭建Nginx+Python+MySQL环境的教程
Dec 25 Python
Python的爬虫包Beautiful Soup中用正则表达式来搜索
Jan 20 Python
Python爬虫爬取美剧网站的实现代码
Sep 03 Python
Python cookbook(数据结构与算法)同时对数据做转换和换算处理操作示例
Mar 23 Python
便捷提取python导入包的属性方法
Oct 15 Python
解决PyCharm不运行脚本,而是运行单元测试的问题
Jan 17 Python
Python3实现的判断环形链表算法示例
Mar 07 Python
python绘制规则网络图形实例
Dec 09 Python
Python lxml模块的基本使用方法分析
Dec 21 Python
python 实现保存最新的三份文件,其余的都删掉
Dec 22 Python
Python更新所有已安装包的操作
Feb 13 Python
使用pytorch 筛选出一定范围的值
Jun 28 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中VC6 X86和VC9 X86的区别及 Non Thread Safe的意思
2013/06/28 PHP
用jscript启动sqlserver
2007/06/21 Javascript
理解Javascript_09_Function与Object
2010/10/16 Javascript
JavaScript 大数据相加的问题
2011/08/03 Javascript
JavaScript高级程序设计(第3版)学习笔记11 内建js对象
2012/10/11 Javascript
JS实现字体选色板实例代码
2013/11/20 Javascript
Node.js与PHP、Python的字符处理性能对比
2014/07/06 Javascript
非常漂亮的相册集 使用jquery制作相册集
2016/04/28 Javascript
js返回顶部实例分享
2016/12/21 Javascript
js监听input输入框值的实时变化实例
2017/01/26 Javascript
详解使用vscode+es6写nodejs服务端调试配置
2017/09/21 NodeJs
vue 运用mock数据的示例代码
2017/11/07 Javascript
vue根据进入的路由进行原路返回的方法
2018/09/26 Javascript
浅析Vue 中的 render 函数
2020/02/28 Javascript
[03:52]DOTA2英雄基础教程 酒仙
2013/12/23 DOTA
[12:21]VICI vs TNC (BO3)
2018/06/07 DOTA
[00:48]食人魔魔法师至宝“金鹏之幸”全新模型和自定义特效展示
2019/12/19 DOTA
在Django框架中运行Python应用全攻略
2015/07/17 Python
如何处理Python3.4 使用pymssql 乱码问题
2016/01/08 Python
详解C++编程中一元运算符的重载
2016/01/19 Python
浅谈Python的垃圾回收机制
2016/12/17 Python
Python数据操作方法封装类实例
2017/06/23 Python
python-str,list,set间的转换实例
2018/06/27 Python
Django csrf 两种方法设置form的实例
2019/02/03 Python
python实现桌面托盘气泡提示
2019/07/29 Python
幼儿园国庆节活动方案
2014/02/01 职场文书
职业生涯规划书结束语
2014/04/15 职场文书
违反交通法规检讨书
2014/09/10 职场文书
详细的本科生职业生涯规划范文
2014/09/16 职场文书
安全生产月宣传标语
2014/10/06 职场文书
个人委托函范文
2015/01/29 职场文书
银行反洗钱宣传活动总结
2015/05/08 职场文书
后天观后感
2015/06/08 职场文书
深度好文:50条没人告诉你的人生经验,句句精辟
2019/08/22 职场文书
Java Socket实现多人聊天系统
2021/07/15 Java/Android
sql server偶发出现死锁的解决方法
2022/04/10 SQL Server