《python基础教程(第二版)》学习笔记 字典(第4章)
《python基础教程(第二版)》学习笔记 字典(第4章)
创建字典:
d={'key1':'value1','key2':'value2'}
lst=[('key1','value1'),('key2','value2')]; d=dict(lst)
d=dict(key1='value1', key2='value2')
字典基本操作:
d={'key1':'value1','key2':'value2'}; len(d) ==> 2 #字典中的键值对数量
d={'key1':'value1','key2':'value2'}; d['key1'] ==> 'value1' # 键为k的值
d={'key1':'value1','key2':'value2'}; d['key1']='NewValue' ==> 'key1': 'NewValue' # 赋值
d={'key1':'value1','key2':'value2'}; del d['key2'] ==> d={'key1': 'value1'} #删除键为k的项
d={'key1':'value1','key2':'value2'}; 'key1' in d ==> True #检查字典中是否有键k
字典的格式化字符串:
d={'key1':'value1','key2':'value2'}; "%(key1)" % d ?????
字典方法:
d={'key1':'value1','key2':'value2'}; d.clear() ==> d={} # 清除全部项
d={'key1':'value1','key2':'value2'}; d.copy() # 复制
from copy import deepcopy; d={'key1':'value1','key2':'value2'}; deepcopy(d) # 深度复制
{}.fromkeys(['key1','key2']) ==> {'key2': None, 'key1': None} #创建字典
d={'key1':'value1','key2':'value2'}; d.get('key1') ==> 'value1' #获得值
d={'key1':'value1','key2':'value2'}; d.has_key('key1') ==> True #是否有该键
d={'key1':'value1','key2':'value2'}; d.items() ==> [('key2', 'value2'), ('key1', 'value1')] # 全部项
d={'key1':'value1','key2':'value2'}; d.iteritems() # 迭代全部项
d={'key1':'value1','key2':'value2'}; d.keys() ==> ['key2', 'key1'] #全部键
d={'key1':'value1','key2':'value2'}; d.iterkeys() #迭代全部键
d={'key1':'value1','key2':'value2'}; d.pop('key1') ==>'value1', d={'key2': 'value2'} #移除并pop key1
d={'key1':'value1','key2':'value2'}; d.popitem() ==> ('key2', 'value2'), d={'key1': 'value1'} #移除并pop?
d={'key1':'value1','key2':'value2'}; d.setdefault('key1','defaultValue1') ==> 'value1' #类似于get,如果没有则设置缺省值
d={'key1':'value1','key2':'value2'}; x={'key2':'UPDATE'}; d.update(x) ==> d={'key2': 'UPDATE', 'key1': 'value1'} #用一个字典更新另一个字典
d={'key1':'value1','key2':'value2'}; d.values() ==> ['value2', 'value1'] #全部值
d={'key1':'value1','key2':'value2'}; d.itervalues() # 迭代全部值
len(d) #字典元素个数/长度
遍历字典:
#!/usr/bin/python
dict={"a":"apple","b":"banana","o":"orange"}
print "##########dict######################"
for i in dict:
print "dict[%s]=" % i,dict[i]
print "###########items#####################"
for (k,v) in dict.items():
print "dict[%s]=" % k,v
print "###########iteritems#################"
for k,v in dict.iteritems():
print "dict[%s]=" % k,v
print "###########iterkeys,itervalues#######"
for k,v in zip(dict.iterkeys(),dict.itervalues()):
print "dict[%s]=" % k,v
《python基础教程(第二版)》学习笔记 字典(第4章)的更多相关文章
- <<Python基础教程>>学习笔记 | 第04章 | 字典
第04章:字典 当索引不好用时 Python唯一的内建的映射类型,无序,但都存储在一个特定的键中.键能够使字符.数字.或者是元祖. ------ 字典使用: 表征游戏棋盘的状态,每一个键都是由坐标值组 ...
- Jquery基础教程第二版学习记录
本文仅为个人jquery基础的学习,简单的记录以备忘. 在线手册:http://www.php100.com/manual/jquery/第一章:jquery入门基础jquery知识:jquery能做 ...
- <<Python基础教程>>学习笔记 | 第10章 | 充电时刻
第10章 | 充电时刻 本章主要介绍模块及其工作机制 ------ 模块 >>> import math >>> math.sin(0) 0.0 模块是程序 一个简 ...
- <<Python基础教程>>学习笔记 | 第12章 | 图形用户界面
Python支持的工具包非常多.但没有一个被觉得标准的工具包.用户选择的自由度大些.本章主要介绍最成熟的跨平台工具包wxPython.官方文档: http://wxpython.org/ ------ ...
- 第二章、元组和列表(python基础教程第二版 )
最基本的数据结构是序列,序列中每个元素被分配一个序号-元素的位置,也称索引.第一个索引为0,最后一个元素索引为-1. python中包含6种内建的序列:元组.列表.字符串.unicode字符串.buf ...
- python基础教程第二版 第一章
1.模块导入python以增强其功能的扩展:三种方式实现 (1). >>> Import math >>> math.floor(32.9) 32.0 #按照 模块 ...
- <<Python基础教程>>学习笔记 | 第11章 | 文件和素材
打开文件 open(name[mode[,buffing]) name: 是强制选项,模式和缓冲是可选的 #假设文件不在.会报以下错误: >>> f = open(r'D:\text ...
- Docker技术入门与实战 第二版-学习笔记-10-Docker Machine 项目-2-driver
1>使用的driver 1〉generic 使用带有SSH的现有VM/主机创建机器. 如果你使用的是机器不直接支持的provider,或者希望导入现有主机以允许Docker Machine进行管 ...
- Docker技术入门与实战 第二版-学习笔记-8-网络功能network-3-容器访问控制和自定义网桥
1)容器访问控制 容器的访问控制,主要通过 Linux 上的 iptables防火墙来进行管理和实现. iptables是 Linux 上默认的防火墙软件,在大部分发行版中都自带. 容器访问外部网络 ...
- python cookbook第三版学习笔记十:类和对象(一)
类和对象: 我们经常会对打印一个对象来得到对象的某些信息. class pair: def __init__(self,x,y): self.x=x self. ...
随机推荐
- u3D大场景的优化
首先介绍下draw call(这个东西越少你的游戏跑的越快): 在游戏中每一个被展示的独立的部分都被放在了一个特别的包中,我们称之为“描绘指令”(draw call),然后这个包传递到3D部分在屏幕上 ...
- Word 操作
1.出文件,最后一页是附件.最后一页的页码不想要.如何删除?用的是 office word 2010版本,跟07 03版本界面不一样. 在最后一页的最前面插入分节符:下一页 ,编辑页脚.让页脚“取消链 ...
- Linux下文件的堵塞与非堵塞对部分系统调用的影响
1.基本概念 所谓的堵塞,即内核在对文件操作I/O系统调用时.假设条件不满足(可能须要产生I/O),则内核会将该进程挂起.非堵塞则是发现条件不满足就会马上返回. 此外须要注意的是非堵塞并非轮询.不然就 ...
- 《Python基础教程》第20章学习笔记
python实现:https://github.com/captainwong/instant_markup c++实现:https://github.com/captainwong/instant_ ...
- 使用badboy录制脚本 结合Jmeter一起测试。
1.badboy介绍 Badboy是一款不错的Web自动化测试工具,如果你将它用于非商业用途,或者用于商业用途安装Badboy 的机器数量不超过5台,你是不需要为它支付任何费用的.Badboy提供了将 ...
- error items-9022:missing required icon file.the bundle does not contain an app icon for iPhone/iPad Touch of exactly '120x120' pixels,in.pen format for ios versions >= 7.0
error items-9022:missing required icon file.the bundle does not contain an app icon for iPhone/iPad ...
- 调整虚拟机中Linux的分辨率
1 在虚拟机配置中,将显示的缓存提高,CPU也提高. 2 运行Linux,在system-preferences-display中调整分辨率
- 通讯录链表实现之C++
前言 在mooc上学习了链表中的顺序表和单链表,并使用单链表数据结构跟着老师完成通讯录创建.通过这次链表练习使用,做一些总结. 自顶向下设计探索. 功能需求 在功能实现上,通讯录主要包括,创建联系人, ...
- 用象棋的思维趣说IT人的职业发展和钱途
最近我花了不少功夫在学习象棋,也学习了王天一等高手的棋路,感觉IT人的职业和下棋一样,往好了讲,争主动权争实惠只争朝夕,往坏了讲,一步走错得用多步来弥补,如果错误太大未必能弥补回来.在本文里,就用下棋 ...
- 【BZOJ2741】【FOTILE模拟赛】L 分块+可持久化Trie树
[BZOJ2741][FOTILE模拟赛]L Description FOTILE得到了一个长为N的序列A,为了拯救地球,他希望知道某些区间内的最大的连续XOR和. 即对于一个询问,你需要求出max( ...