python基础教程第4章——字典
1、映射(mapping):通过名字引用值的数据结构。字典是Python中唯一内建的映射类型,字典中的值并没有特殊的顺序,但是都存储在一个特定的键(key)里。键可以是数字、字符串甚至是元组。
2、字典比较适用的情形:表征游戏棋盘的状态,每个键都是由坐标值组成的元组;存储文件修改次数,用文件名作为键;数字电话/地址簿
3、字典的创建和使用
phonebook={'Alice':'2341','Beth':'9102','Cecil':'3258'},使用大括号,每个键和它的值之间用冒号(:)隔开,项之间用逗号(,)隔开
空字典用{}
dict函数,通过其他映射(比如其他字典)或者(键,值)这样的序列对建立字典
item=[('name','Gumby'),('age',42)]
d=dict(items)
d={'age':42,'name':'Gumby'}
d['name']='Gumby'
4、字典的基本操作
len(d)返回d中项(键-值对)的数量
d[k]返回关联到k上的值
d[k]=v将值V关联到k上
del d[k]删除键为k的项
k in d检查d中是否含有键为k的项
键类型:字典的键不一定为整型;自动添加:即使那个键起初在字典中并不存在,也可以为它分配一个值;成员资格:k in d 查找的是键
5、字典的方法
clear方法清除字典中所有的项。这个是原地操作,没有返回值(返回None)
copy方法,返回一个具有相同键值对的新字典,为浅复制
deepcopy 深复制,修改原始字典,不会修改后续复制的字典
fromkeys使用给定的键建立新的字典,每个默认对应的值为None
get方法是个更宽松的访问字典项的方法。get可以访问字典中不存在的项,返回None
has_key检查字典中是否含有给出的键。d.has_key(k)相当于k in d
items 将所有的字典项以列表方式返回(键,值)
iteritems作用于items大致相同,但是返回一个迭代器对象而不是列表。iteritems更高效
keys将字典的键以列表形式返回
iterkeys返回针对键的迭代器
pop方法用来获得对应于给定的值,然后将这个键-值对从字典中移除
popitem方法类似于list.pop,后者会弹出列表的最后一个元素。但是不同的是,popitem弹出随机的项,因为字典并没有“最后的元素”或者其他顺序的概念。
setdefault方法在某种程度上类似于get方法,就是能获得与给定键相关联的值,除此之外,setdefault还能在字典中不含有给定键的情况下设定相应的键值。当键不存在是,setdefault返回默认值并相应的更新字典,如果键存在,那么就返回与其对应的值,但不改变字典。默认值是可选的。不设定会默认为None.
update方法可以利用一个字典项更新另外1个字典。提供的字典中的项会被添加到旧的的字典中,若有相同的键则会进行覆盖。
values和itervalues 前者以列表的形式返回字典中的值,后者返回值得迭代器。与返回键的列表不同的是,返回键的列表中可以包含重复的元素。
python基础教程第4章——字典的更多相关文章
- python基础教程-第三章-使用字符串
本章将会介绍如何使用字符串何世华其他的值(如打印特殊格式的字符串),并简单了解下利用字符串的分割.联接.搜索等方法能做些什么 3.1 基本字符串操作 所有标准的序列操作(索引.分片.乘法.判断成员资格 ...
- Python基础教程笔记 第二章
本章的名字虽然叫列表和元组,但是本章讲的最多的是列表,元祖指讲了很少的一部分.因为元组和列表很多方面都是一样的. 列表和元组的区别:列表可以被修改,元祖不可以被修改. python包含的6种内建序列: ...
- python基础教程第5章——条件循环和其他语句
1.语句块是在条件为真(条件语句)时执行或者执行多次(循环语句)的一组语句.在代码前放置空格来缩进语句即可穿件语句块.块中的每行都应该缩进同样的量.在Phyton中冒号(:)用来标识语句块的开始,块中 ...
- 《python基础教程》笔记之 字典
字典创建 字典由多个键值对组成,每个键和对应值之间用冒号隔开,项之间用逗号隔开,而整个字典用一对大括号括起来,如 >>> phonebook={'alice':'0123', 'Be ...
- python基础教程第2章——列表与元组笔记
1.序列是Python中最基本的数据结构.序列中的每个元素被分配一个序列号——元素的位置,也称索引,第1个索引是0,第2为1,以此类推.序列中的最后1个元素为-1,倒数第2个位-2. python中有 ...
- Python基础教程笔记 第一章
/ 表示整除,当导入_future_模块中的version时,/ 表示正常的的除法, 此时可用//表示整除,不论数字是整型还是浮点型,都可以用//表示整除. ** 表示幂次方 例如 2**3 ...
- 《Python基础教程》第一章:基础知识
如果希望只执行普通的除法,可以在程序前加上以下语句:from __future__ import division.还有另外一个方法,如果通过命令行运行Python, 可以使用命令开关-Qnew.此时 ...
- python基础教程第6章——抽象
1.函数的定义,使用def(或“函数定义”)语句: def hello(name): return ‘Hello.'+name+'!' def fibs(num): result=[0,1] for ...
- python基础教程第3章——字符串
1.字符串格式化 字符串格式化操作符%+转换标志+最小字段宽度+点后跟精度值+转换类型 String模块提供另外一种格式化方式 from string import Template s=Templa ...
随机推荐
- unity3D射线检测敌人是否在前方
//发射一条射线,去检测玩家是否在自己面前,用来随后的发射炮弹 bool isForward = false; var TranformShootPoint = ai.WorkingMemory.Ge ...
- HttpAsyncClient 的简单使用
下载地址:http://hc.apache.org/downloads.cgi 在NetBeans中导入以下jar文件: 1:一次请求: public static void oneReuest(){ ...
- C#.NET利用ContextBoundObject和Attribute实现AOP技术--AOP事务实现例子
我前两天看见同事用写了用AOP技术实现缓存的方案,于是好奇看了一下这是怎么实现的.原来是用了.NET中的一个类ContextBoundObject和Attribute相关技术.其实个类在.NET Fr ...
- Linux批量重命名
http://blog.csdn.net/qm4050/article/details/8472464 http://www.jb51.net/article/33902.htm http://hi. ...
- explorer.exe进程简单介绍
explorer.exe是Windows程序管理器或者Windows资源管理器,它用于管理Windows图形壳,包括开始菜单.任务栏.桌面和文件管理.不过也发现有大量的恶意病毒木马插入到explore ...
- 2015第16周六学习java建议
学习Java 建议: 尽量用 google 查找技术资料. 有问题在 stackoverflow 找找,大部分都已经有人回答. 多看官方的技术文档. ibm developerworkers 的文章质 ...
- unix c 03
C程序员的错误处理 errno/perror/strerror 都是系统设计好的 自定义函数中的错误处理 1 可以返回-1 代表错误 2 指针类型可以用 NULL 代表错误 ...
- OpenMeetings(3)----启动顺序解析
OpenMeetings系统较大,代码量也不小,如果对前端的OpenLaszlo开发不熟悉的话,刚研究代码时,确实有种丈二和尚摸不着头脑的感觉.一番研究之后,终于初步理清了系统的初步动作流程,具体执行 ...
- ubuntu 14.04 下试用Sublime Text 3
很多源代码都没有IDE支持的,尤其是开源的源代码.从github上下载的,很多也不用IDE.包括我自己公司的代码,基本都是脚本,也不用IDE.通常情况下,都是用notepad++.UE之类的文本编辑器 ...
- mycat(4)
2016二月 24 置原 配置MyCat-eye 接下来在开始使用MyCat之前,我们先把监控平台部署好. 下载MyCat-eye项目,mvn打包. 之后得到类似于Mycat-web-1.0-SNAP ...