python中dict字典的查询键值对 遍历 排序 创建 访问 更新 删除基础操作方法
作者:wdc 发布时间:2023-10-06 12:13:03
字典是另一种可变容器模型,且可存储任意类型对象。
字典的每个键值(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字典的使用方法
猜你喜欢
- 很有创意的鼠标指针风筝,看起来非常有意思。在网络上看到的,一下也想不起来是那里的了,所以特别说一下图片是来自网络的,版权归作者所有。
- 推荐阅读:JS iFrame加载慢怎么解决在项目中经常要动态添加iframe,然后再对添加的iframe进行相关操作,而往往iframe还没
- List:1. 什么叫商品评论?2. 评论体系的存在意义3. 评论体系的现状4. 都有哪些元素5. 该如何设计?6. 评论体系之外1.什么叫
- 在想把CIFAR-10 的16进制数据转为图像的时候需要用到imsave(),但是在import scipy.misc 之后显示该库内没有i
- 应用场景:工作中经常遇到大量的数据需要整合、去重、按照特定格式导出等情况。如果用 Excel 操作,不仅费时费力,还不准确,有么有更高效的解
- 一组常用的弹出窗口用法,以下代码集合常用的弹出窗口用法。1、最基本的弹出窗口代码<SCRIPT LANGUAGE="
- 写入:1:把gif图像文件读入内存(一个变量strTemp)。2:写入数据库。Dim binTmp() As
- 我就废话不多说了,大家还是直接看代码吧~#aaa.py#version 3.5import os #这句是没用了,不知道为什么markdow
- 网络安全问题很重要,尤其是保证数据安全,遇到很多在写接口的程序员直接都是明文数据传输,在我看来这是很不专业的。本人提倡经过接口的数据都要进行
- 【摘 要】 我只是提供我几个我认为有助于提高写高性能的asp.net应用程序的技巧,本文提到的提高asp.net性能的技巧只是一个起步,更多
- 一个很棒的 blog 文章,是 PPK 两年前写的,文章中解释了 contains() 和 compareDocumentPosition(
- Linux终端里面可谓是奇妙无限,很多优秀的软件都诞生在终端里面。相较之下,Windows本身的理念和Linux就不一致,所以,你懂得。 下
- 装了 Access 2003 安全更新 (KB981716) 之后 Access 打不开,office2003-KB981716-FullF
- 前言:数据库是大多数 Web 应用的基础设施,只要想把数据存储下来,就离不开数据库,下面将一起学习一下如何给 Flask 应用添加数据库支持
- 无水印视频下载方法一:无水印视频下载很简单,有一个通用的方法,就是使用去水印平台即可。我使用的去水印平台是:http://douyin.ii
- 在备份数据库的时候,数据表中可能存在这样的值array('a'='b','c'='d
- 可扩展标记语言 (XML) 是用于描述数据集内容以及应如何将数据输出到设备上或如何在 Web 页上显示数据的语言。标记语言的创建来源于出版商
- 在使用Dreamweaver制作主页的时候往往需要改变表格的高度。然而有时当我们拖动表格的边框,无论怎样拖动,等到放下鼠标,表格却又恢复到原
- 对于个人用户来说,除了病毒和木马,网页中的隐形代码也开始严重地威胁着我们的安全,但大多数人却缺乏自我保护意识,对隐形代码的危害认识不够,甚至
- 最简单的:<textarea name="A" cols="45" rows="2&