Python内置数据类型之Dict
Dict字典,是另一种可变类型的容器模型,可以存储任意类型对象。
1、字典的创建
字典的每个键值对(key->value)使用冒号(:)分隔,键值对之间使用逗号(,)分隔,使用花括号{}包含元素。键必须是唯一的,值可以不唯一。
值可以选取任意数据类型,但键必须是不可变的,如数字、字符串、元组。下面是一个字典的实例:
dict = {'Alice': '2341', 'Beth': '9102', 'Cecil': '3258'}
还可以创建一个空字典:
dict={}
2、字典的访问
可以简单地使用 d[key] 的形式来查找对应的 value,这和 list 很像,不同之处是,list 必须使用索引返回对应的元素,而dict使用key:
print dict['Beth']
结果:
9102
如果方括号中的key存在就会返回对应的value,如果不存在则会报错:KeyError。
有两种方法可以避免KeyError:
(1)在使用key访问字典之前先判断一下key是否存在:
if 'Beth' in dict:print dict['Beth']
(2)使用Dict本身提供的get方法,当key不存在时返回None:
print dict.get('Tom') #None
3、修改字典
修改字典的方法有添加新的键值对,修改已有key的value和删除已有的键值对:
(1)添加新的键值对:
dict['Tom']='1234' #add new entry
dict['Alice']='0000' #update existing entry
print dict
结果:
{'Alice': '0000', 'Beth': '9102', 'Cecil': '3258','Tom':'1234'}
4、删除字典元素
可以删除字典元素,清空字典,还可以删除整个字典:
del dict['Tom'] #删除某一个条目
dict.clear() #清空字典,但dict还存在,是一个空字典
del dict #显示删除字典,dict不存在,再次访问会出错
5、字典的特点
(1)dict的第一个特点是查找速度快,无论dict有10个元素还是10万个元素,查找速度都一样。而list的查找速度随着元素增加而逐渐下降。
不过dict的查找速度快不是没有代价的,dict的缺点是占用内存大,还会浪费很多内容,list正好相反,占用内存小,但是查找速度慢。
由于字典是按key查找元素的,因此字典中的key不能重复。
(2)dict的第二个特点就是存储的key-value序对是没有顺序的!这和list不一样。也就是说,字典是无序的,不能用来存储有序的集合。
(3)dict的第三个特点是作为 key 的元素必须不可变,Python的基本类型如字符串、整数、浮点数还有元组都是不可变的,都可以作为 key。但是list是可变的,就不能作为 key。不过value是可变的。
6、字典的遍历
dict也是一个集合,所以它的遍历和list类似,一个for循环就可以遍历:
dict = { 'Adam': 95, 'Lisa': 85, 'Bart': 59 }
for key in dict:print key+":"+str(dict[key])
结果:
Lisa:85 Adam:95 Bart:59
7、字典的迭代
字典类型有几个内置函数可以用来迭代字典元素:keys()、values()、items():
keys返回字典的所有键构成的list,values返回所有值构成的list,item返回由键值对组成的list:
现在就可以这样迭代字典了:
for key,value in dict:print key,":",value
结果:
Lisa:85 Adam:95 Bart:59
8、Python内置函数
Python内置数据类型之Dict相关推荐
- 数据结构(Python版):Python内置数据类型
1. Python内置数据类型 python内置数据类型中的列表list和字典dict,可作为Python语言中实现各种常用数据结构的基石,后续各种数据结构均基于他们实现.两种数据类型的常见(操作)方 ...
- 以下不是python内置数据类型的是_以下不是python内置数据类型的是
以下不是python内置数据类型的是 答:float 关于分娩先兆,下述哪项是错误的 答:初产妇见红血量比经产妇多 中国提出的________理念,为世界和平繁荣提供了新路径,并被写入联合国决议 答: ...
- Python内置数据类型之Tuple
tuple是另一种有序的列表,中文翻译为" 元组 ".tuple 和 list 非常类似,但是,tuple一旦创建完毕,就不能修改了.还有就是,list使用中括号[],而tuple ...
- Python内置数据类型之list
list,列表,是Python内置的一种数据类型.list是一种有序的集合,可以随时添加和删除其中的元素.一个简单的方法识别list,即用"[]"括起来的就是list. 下面介绍l ...
- python 内置数据类型之数字
目录: 1.2. 数字 1.2.1. 数字类型 1.2.2. 浮点数 1.2.3. 进制记数 1.2.4. 设置小数精度 1.2.5. 分数 1.2.6. 除法 1.2 数字 1.2.1 数字类型 p ...
- python语言中内置的字符串排版方法_python基础知识(python内置数据类型-字符串)...
python中的字符串 字符串基本特点 字符串的本质是字符序列.python中的字符串是不可变的,无法对原字符串做任何修改(不能用下标赋值的方式去改变字符串).但是可以将字符串的一部分赋值创建新的字符 ...
- python内置数据结构之dict
字典是什么 key-value对的集合.可变的.无序.key不重复的序列.key只能是唯一标识,value不限定,只要是合法的value.key和value一一对应. 字典的定义初始化 空字典定义 d ...
- python内置数据类型与特点_初学Python之内置数据类型一
Python中一些基本数据类型: Booleans[布尔型] 或为 True[真] 或为 False[假]. Numbers[数值型] 可以是 Integers[整数](1 和 2).Floats[浮 ...
- python类型-Python基本内置数据类型有哪些?
玩蛇网Python学习平台在这里会和大家讲下Python初学者,最常用到的Python基本内置数据类型有哪些. 在Python程序中,每个数据都是对像,每个对像都有自己的一个类型.不同类型有不同的操作 ...
最新文章
- iphone smtp服务器没有响应,电子邮件卡在iPhone或iPad上的发件箱?如何修复iOS中的未发送邮件 | MOS86...
- 如果遇到Hadoop集群正常,MapReduce作业运行出现错误,如何来查看作业运行日志(图文详解)...
- mybatis 大于小于转义_10 HTML5特性、转义字符和注释
- c++11的10个新特性
- 花呗分期计算器_花呗分期10000元利息怎么算?取决于你的分期期数!
- .ssh文件夹在哪里_【TOOLS】本地利用ssh远程连接服务器并启用远程服务器的jupyter lab并配置好anaconda的环境...
- hihocoder第237周:三等分带权树
- 一种语音控制PPT翻页系统的制作方法
- 使用GMM进行语音性别检测(入门)
- 14-微信小程序商城 产品详情页布局(微信小程序商城开发、小程序毕业设计、小程序源代码)(黄菊华-微信小程序开发教程)
- rls自适应滤波器matlab实现,Matlab自适应滤波器设计Demo——LMS,RLS
- 华为网络设备查看设备温度状态检查命令方法
- OC算法 输出手机号码归属地
- 软件测试—十二章测试层次
- Java--SpringBoot无法访问网站
- 《软技能》读书笔记——生产力篇
- java中dom是什么_程序员总说的DOM到底是什么?
- c语言中指针用法初级,C语言中各类指针的用法(小结)
- 基于Mui与H5+开发webapp的Android原生工程打包步骤(使用新版本5+SDK与Android studio)(部分内容转自dcloud官网)...
- ios客户端安全性问题分析及处理方式
热门文章
- JAVA异常处理、常用类、反射、集合
- Discuz 升级X3问题汇总整理
- Javascript -- In
- 【文摘】 雪念——作者:蓝色妖姬
- vue lang_新疆人的“lang”是“浪”吗?
- linux nexus启动_Linux一键部署Nexus 3私服仓库自动化部署脚本
- linux 无法找到函数定义,找到定义Linux函数的位置
- adc分辨率和精度的区别_科普 | 传感器的灵敏度、分辨率和精度三者之间有何区别?...
- java定义js函数_JS中可以先使用函数,然后再定义.
- MongoDB 数组类型查询 —— $elemMatch 操作符