Python学习笔记(2)-字典

什么是字典?
像列表一样,但是不能想列表用下表索引,而是通过'键',键及其关联的值称为'键-值'对。字典经常会简写成dict
创建字典{}
例如:
>>> dict = {'one':1,'two':2,'three':3}
访问字典的值通过key
>>> dict = {'one':1,'two':2,'three':3}
>>> dict['one']
1
添加或修改字典[key]
>>> dict = {'one':1,'two':2,'three':3}
>>> dict['one']
1
>>> dict['four'] = 4
>>> dict
{'one': 1, 'two': 2, 'three': 3, 'four': 4}
>>> dict['one'] = '一'
>>> dict
{'one': '一', 'two': 2, 'three': 3, 'four': 4}
删除字典里元素 del
>>> del dict['four']
>>> dict
{'one': '一', 'two': 2, 'three': 3}
合并字典update()
>>> dict
{'one': '一', 'two': 2, 'three': 3}
>>> dict1 = {'four':4}
>>> dict.update(dict1)
>>> dict
{'one': '一', 'two': 2, 'three': 3, 'four': 4}
使用clear()删除所有元素
>>> dict
{'one': '一', 'two': 2, 'three': 3, 'four': 4}
>>> dict.clear()
>>> dict
{}
判断一个键是否存在in,get()方法,setdefault()方法
>>> dict={'one': 1, 'two': 2, 'three': 3, 'four': 4}
>>> 'one' in dict
True
>>> 'five' in dict
False
get()方法,它有两个参数:要取的其值的键,以及如果该键不存在时,返回的备用值。
>>> dict
{'one': 1, 'two': 2, 'three': 3, 'four': 4}
>>> dict.get('one')
1
>>> dict.get('five')
>>> print(dict.get('five'))
None
>>> dict.get('five',5)
5
>>> dict
{'one': 1, 'two': 2, 'three': 3, 'four': 4}
setdefault()方法提供一种方式,传递给该方法的第一个参数,是要检查的键。第二个参数,如果该键不存在时要设置的值。如果该键存在,就会返回键的值。
>>> dict
{'one': 1, 'two': 2, 'three': 3, 'four': 4}
>>> dict.setdefault('one',1)
1
>>> dict.setdefault('one','一')
1
>>> dict
{'one': 1, 'two': 2, 'three': 3, 'four': 4}
>>> dict.setdefault('five',5)
5
>>> dict
{'one': 1, 'two': 2, 'five': 5, 'three': 3, 'four': 4}
keys()、values()、items()方法
分别对应键、值、和键-值对
>>> for i in dict.keys():
print(i)
one
two
three
four
>>> for i in dict.values():
print(i)
1
2
3
4
>>> for a,b in dict.items():
print(a,b)
one 1
two 2
three 3
four 4
使用 = 赋值,使用copy()复制
= 和列表一样,改变其中一个变量,其他变量也会改变
>>> dict
{'one': 1, 'two': 2, 'five': 5, 'three': 3, 'four': 4}
>>> dict1 = dict
>>> del dict1['five']
>>> dict1
{'one': 1, 'two': 2, 'three': 3, 'four': 4}
>>> dict
{'one': 1, 'two': 2, 'three': 3, 'four': 4}
使用copy()就可以避免这种情况
嵌套
列表中嵌套字典
>>> [{'one':1},{'two',2},{'three':3}]
[{'one': 1}, {2, 'two'}, {'three': 3}]
字典中嵌套列表
>>> {'one':[1,'yi','一','壹'],'two':[2,'二','贰']}
{'one': [1, 'yi', '一', '壹'], 'two': [2, '二', '贰']}
字典中嵌套字典
>>> {'number':{'one':1,'two':2,'three':3},'abc':{'a':'A','b':'B'}}
{'number': {'one': 1, 'two': 2, 'three': 3}, 'abc': {'a': 'A', 'b': 'B'}}
Python学习笔记(2)-字典的更多相关文章
- python学习笔记整理——字典
python学习笔记整理 数据结构--字典 无序的 {键:值} 对集合 用于查询的方法 len(d) Return the number of items in the dictionary d. 返 ...
- Python学习笔记之字典
一.创建和使用字典 1.创建字典 phonebook={'Alice':'2341','Beth':'9102','Cecil':'3258'} 2.dict,通过映射创建字典 >>> ...
- 【Python学习笔记】字典操作
字典dict是Python中唯一内置的映射类型,由键值对组成,字典是无序的.字典的键必须是不变对象,如字符串.数字.元组等,而包含可变对象的列表.字典和元组则不能作为键.这里可变和不可变的意思是指这个 ...
- Python学习笔记四--字典与集合
字典是Python中唯一的映射类型.所谓映射即指该数据类型包含哈希值(key)和与之对应的值(value)的序列.字典是可变类型.字典中的数据是无序排列的. 4.1.1字典的创建及赋值 dict1={ ...
- python学习笔记八——字典的方法
4.3.3 字典的方法 字典的常用方法可以极大地提高编程效率.keys()和values()分别返回字典的key列表和value列表.例: dict={"a":"appl ...
- python学习笔记七——字典
4.3 字典结构 字典是Python中重要的数据类型,字典的由“键-值”对组成的集合,字典中的“值”通过“键”来引用. 4.3.1 字典的创建 字典由一系列的“键-值”(key-value)对组成,“ ...
- python学习笔记(字典乱码)
博主总结下 python中字典中包含中文时,使用过程中出现乱码 json.dumps(params, encoding="UTF-8", ensure_ascii=False) p ...
- Python学习笔记3(字典)
创建字典 dict函数 字典的格式化字符串 字典方法 clear copy fromkeys 序列是一个按照一定顺序将值进行组织的数据结构形式,可以通过索引对其进行征引.另外还有一种数据结构是通过名字 ...
- python学习笔记(6)——字典(Dictionary)
dict= {key1 : value1, key2 : value2 ...} 关键词:字典中元素成对出现- key:value 格式- 两端{ } ,键:值,每对键值间用 ,隔开. 键key-唯一 ...
- python学习笔记(三)---字典
字典 在Python中,字典 字典 是一系列键 键-值对 值对 .每个键 键 都与一个值相关联,你可以使用键来访问与之相关联的值.与键相关联的值可以是数字.字符串.列表乃至字典.事实上,可将 任何Py ...
随机推荐
- Android文件的流操作工具类
import java.io.ByteArrayOutputStream; import java.io.File; import java.io.FileOutputStream; import j ...
- jQuery计算文本宽度和input标签根据输入字符动态自适应宽度的实现
jQuery计算文本宽度的原理是利用html提供的<pre>标签,向dom中动态添加<pre>标签,标签里的内容就是要测试长度的文本,获取完长度之后再删除刚才添加的<pr ...
- IBM沃森会成为第一个被抛弃的AI技术吗?
作者|William Vorhies 译者|姚佳灵 编辑|Debra 导读:IBM 的沃森问答机(Question Answering Machine,简称 QAM),因 2011 年参加综艺节目&l ...
- Android-启动页“android:windowBackground”变型?
<?xml version="1.0" encoding="utf-8"?> <layer-list xmlns:android=" ...
- Android沉浸式状态栏的简单实现
随着卡片式设计在Android系统的上越来越流行,比如现在早已经烂大街的沉浸式状态栏,几乎所有的主流的APP都支持沉浸式状态栏,如QQ.UC浏览器等等.所以觉得有必要学习一下,找了点资料,总结了一下, ...
- Linux 进程后台运行的几种方式 screen
转载请标明出处:http://blog.csdn.net/zhaoyanjun6/article/details/80580779 本文出自[赵彦军的博客] screen是Linux窗口管理器,用户可 ...
- mysql之全球化和本地化:字符集、校对集、中文编码问题
本文内容: 什么是字符集?什么是校对集? 查看字符集和校对集 设置字符集和校对集 mysql中的中文数据问题 首发日期:2018-04-19 什么是字符集?什么是校对集? 字符集是字母和符号的集合,每 ...
- Response()的对象
addCookie(Cookie cookie):这个方法是向Response容器中添加一个Cookie,然后服务器容器会自动的将这个Cookie回写给客户机的,至于Cookie的相关知识我们会在后面 ...
- 盒子模型、网页自动居中、float浮动与清除、横向两列布局
1.CSS包含:标准文档流,浮动,绝对定位 标准文档流的特点:从上到下,从左到右,输出文档内容 盒子模型:块级元素(div ui li dl dt p)与行级元素(span strong img in ...
- Linux内核线程kernel thread详解--Linux进程的管理与调度(十)
内核线程 为什么需要内核线程 Linux内核可以看作一个服务进程(管理软硬件资源,响应用户进程的种种合理以及不合理的请求). 内核需要多个执行流并行,为了防止可能的阻塞,支持多线程是必要的. 内核线程 ...