python自学之字典
2015-10-27 08:26
295 查看
字典属于映射,也是唯一的一种内建的映射类型。(映射和数学中的映射类似,其他的语言中也有相应的类型,比如C++中的map,hash_table等)
字典在python中表示为{},其中每个元素都是键值对。如下:
d={'name':'chenjun','sex':‘male’}
字典的键是唯一的,且键可以是任意不可变的类型,即可以是元祖、数字和字符串等(不可以是列表)
如果存在相同的键,那么只会保存最后一个出现的键值对。(其实在字典中,是没有顺序可言的)
如同列表和元祖一样,字典也有相应的类型表示,即dict,我们可以用dict创建字典。
dict([('name',‘chenjun’),('sex','male')])
dict也可以采用关键字参数创建字典,如下:
dict(name='chenjun',sex='male')
字典的常见操作如下(其实和C++中的map类型的一些操作类似~):
d[k]表示取键值k对应的值,如果不存在键值k则引发keyError异常。
d[k] = v,将值v赋给键k对应的值,如果存在键值k,则相当于添加键值对(k,v)到字典d中。
del d[k],删除键值为k的项
k in d ,判断键k是否在字典的中,是则返回True,否则返回False。
注意到以上的操作都是以k为索引的。
字典的常见方法:
clear, 清空字典,原地操作,修改字典本身,返回值为None,相当于删除字典中所有的项。
copy,浅复制,返回具有相同键值的字典。(浅复制是什么?下一篇文章会简单介绍浅复制和深复制的含义和区别)
items,以列表的形式返回所有的键值对,列表中的每个元素是键值对组成的二元组。
iteritems,和items一样,不过返回的是迭代器。
fromkeys,用给定的键建立新的字典,默认字典的所有键对应的值为None,也可以指定值。
get,返回指定键对应的值,和索引操作作用一致,但是不同的是,如果键不存在不会引发异常,默认会返回None,也可以指定值。
has_key,顾名思义,就是判断给定的键是否存在,相当于用in判断。
keys,以列表的形式返回所有的键。
iterkeys,和keys一样,不过返回的是对应的迭代器。
values,以列表形式返回字典所有的值。
itervalues,和values相同,不过返回的是对应的迭代器。
setdefault,类似get,返回指定键对应的值,如果该键不存在,则可以设定相应的键值。
update,用一个字典更新另外一个字典,更新的原则就是”有则改之,无则加冕“。
字典在python中表示为{},其中每个元素都是键值对。如下:
d={'name':'chenjun','sex':‘male’}
字典的键是唯一的,且键可以是任意不可变的类型,即可以是元祖、数字和字符串等(不可以是列表)
如果存在相同的键,那么只会保存最后一个出现的键值对。(其实在字典中,是没有顺序可言的)
如同列表和元祖一样,字典也有相应的类型表示,即dict,我们可以用dict创建字典。
dict([('name',‘chenjun’),('sex','male')])
dict也可以采用关键字参数创建字典,如下:
dict(name='chenjun',sex='male')
字典的常见操作如下(其实和C++中的map类型的一些操作类似~):
d[k]表示取键值k对应的值,如果不存在键值k则引发keyError异常。
d[k] = v,将值v赋给键k对应的值,如果存在键值k,则相当于添加键值对(k,v)到字典d中。
del d[k],删除键值为k的项
k in d ,判断键k是否在字典的中,是则返回True,否则返回False。
注意到以上的操作都是以k为索引的。
字典的常见方法:
clear, 清空字典,原地操作,修改字典本身,返回值为None,相当于删除字典中所有的项。
copy,浅复制,返回具有相同键值的字典。(浅复制是什么?下一篇文章会简单介绍浅复制和深复制的含义和区别)
items,以列表的形式返回所有的键值对,列表中的每个元素是键值对组成的二元组。
iteritems,和items一样,不过返回的是迭代器。
fromkeys,用给定的键建立新的字典,默认字典的所有键对应的值为None,也可以指定值。
get,返回指定键对应的值,和索引操作作用一致,但是不同的是,如果键不存在不会引发异常,默认会返回None,也可以指定值。
has_key,顾名思义,就是判断给定的键是否存在,相当于用in判断。
keys,以列表的形式返回所有的键。
iterkeys,和keys一样,不过返回的是对应的迭代器。
values,以列表形式返回字典所有的值。
itervalues,和values相同,不过返回的是对应的迭代器。
setdefault,类似get,返回指定键对应的值,如果该键不存在,则可以设定相应的键值。
update,用一个字典更新另外一个字典,更新的原则就是”有则改之,无则加冕“。
相关文章推荐
- Python Requsets库
- 关于python中文转码出现的错误
- 在Ubuntu下开始搭建Python开发平台
- python使用wmi模块获取windows下的系统信息 监控系统
- python学习——基础(九)
- fips2
- Python下使用help(dict),显示'more'不是内部或外部命令,也不是可运行的程序或批处理文件,该如何处理?
- python中一个快速求素数的function
- Python编码和Unicode
- python是什么?及其特点!
- python socket and SSL example
- python学习笔记(四)dict和set类型
- 用__init__参数自动初始化实例变量
- 10个值得我们关注的python博客
- 确保变量在特定模块定义
- 垃圾回收进程的调试(gc模块)
- traceback中输出回溯信息中包含帧局部变量列表
- python的文件和流
- Python函数_返回值
- 在mac上安装Python下的模块管理工具pip