【学习笔记】--- 老男孩学Python,day6 字典
详细方法:http://www.runoob.com/python/python-dictionary.html
1. dict 用大括号{} 括起来. 内部使用key:value的形式来保存数据 {'jay':'周杰伦', "jj":'林俊杰'} 注意:字典的key必须是可哈希的. 不可变的, value 没有限制 不是按照我们保存的顺序保存的, 无序的
dic = {'name' : '牛力' , 'age' : 18, 'hometown' : '洛阳'}
print(dic)
2. 增删改查 1. 增 dict[不存在的key] = value, setdefault()
dic = {'name' : '牛力' , 'age' : 18, 'hometown' : '洛阳'}
# 1 直接给出键值对
dic['hobby'] = '游戏'
print(dic)
# 2 .setdefault
dic.setdefault('key','value')
print(dic)
2. 删 pop(key). del dict[key]. popitem(), clear()
dic = {'name' : '牛力' , 'age' : 18, 'hometown' : '洛阳','hobby':['游戏,骑车,看电影']}
# 1 .pop()
dic.pop('age')
print(dic)
# 2 del
del dic['hobby']
print(dic)
# 3 popitem() 若打印,返回删除的元祖
dic.popitem()
print(dic)
3. 改 1.直接修改键值对 2.dict[存在的key] = 新值, d1.update(d2) 把d2的k-v更新到d1中
#1.直接修改键值对
dic = {"李晨":"范冰冰", "邓超":"孙俪", "王祖蓝":"李亚男"}
dic['李晨'] = '张馨予'
print(dic)
# 2.update
dic = {"李晨":"范冰冰", "邓超":"孙俪", "王祖蓝":"李亚男"}dic2 = {'武大郎':'潘金莲','李晨':'张馨予'}dic.update(dic2)print(dic)
4. 查 get(key, 默认值), setdefault(), dict[key]
3. 字典的常用方法
1. keys() 返回所有字典的key的集合(高仿列表) 2. values() 返回所有的value的集合 3. items() 返回键值对. 元组
dic = {"及时雨":"宋江", "小李广":"花荣", "黑旋风":"李逵", "易大师":"剑圣"}
dic["大宝剑"] = "盖伦" # 新增
dic["及时雨"] = "天老爷" # 修改
print(dic["易大师是个脑残"]) # 查询, 如果key不存在,报错
print(dic.get("易大师", "余小C")) # 如果key不存在. 返回None
get()
# 可以通过key来获取value的值. 那么如果key不存在. 返回None.
# 可以给出一个默认值. 当key不存在的时候返回默认值
dic = {"及时雨":"宋江", "易大师":"剑圣"}
dic.setdefault("及时雨", "诺克萨斯") # 可以帮我们添加
print(dic)
ret = dic.setdefault("及时雨123", "hello")
print(ret)
print(dic)
# 1. 首先判断原来的字典中有没有这个key . 如果没有. 执行新增
# 2. 用这个key去字典中查询, 返回查到的结果
dic = {"及时雨":"宋江", "易大师":"剑圣"}
ret = dic.setdefault("及时雨", "西门庆")
print(dic) #
print(ret) #
解构:
a, b = (1, 2)
print(a)
print(b)
a, b, c = ("马化腾", "马云", "马良")
print(b)
a, b = [1, 2]
print(a, b)
4. 字典的嵌套
【学习笔记】--- 老男孩学Python,day6 字典的更多相关文章
- 学习笔记《简明python教程》
学习笔记<简明python教程> 体会:言简意赅,很适合新手入门 2018年3月14日21:45:59 1.global 语句 在不使用 global 语句的情况下,不可能为一个定义于函数 ...
- python3.4学习笔记(二十三) Python调用淘宝IP库获取IP归属地返回省市运营商实例代码
python3.4学习笔记(二十三) Python调用淘宝IP库获取IP归属地返回省市运营商实例代码 淘宝IP地址库 http://ip.taobao.com/目前提供的服务包括:1. 根据用户提供的 ...
- python3.4学习笔记(二十一) python实现指定字符串补全空格、前面填充0的方法
python3.4学习笔记(二十一) python实现指定字符串补全空格.前面填充0的方法 Python zfill()方法返回指定长度的字符串,原字符串右对齐,前面填充0.zfill()方法语法:s ...
- python3.4学习笔记(二十) python strip()函数 去空格\n\r\t函数的用法
python3.4学习笔记(二十) python strip()函数 去空格\n\r\t函数的用法 在Python中字符串处理函数里有三个去空格(包括'\n', '\r', '\t', ' ')的函数 ...
- python3.4学习笔记(十二) python正则表达式的使用,使用pyspider匹配输出带.html结尾的URL
python3.4学习笔记(十二) python正则表达式的使用,使用pyspider匹配输出带.html结尾的URL实战例子:使用pyspider匹配输出带.html结尾的URL:@config(a ...
- 【Python学习笔记之一】Python关键字及其总结
前言 最近在学习Java Sockst的时候遇到了一些麻烦事,我觉得我很有必要重新研究学习Python这种脚本语言,参考大神的经验,淘到了一本学习Python的好书<"笨方法" ...
- Linux Shell输出颜色字符学习笔记(附Python脚本实现自动化定制生成)
齿轮发出咔嚓一声,向前进了一格.而一旦向前迈进,齿轮就不能倒退了.这就是世界的规则. 0x01背景 造了个轮子:御剑师傅的ipintervalmerge的Python版本.觉得打印的提示信息如果是普通 ...
- python学习笔记1之-python简介及其环境安装
python学习笔记之-python简介及其环境安装 最近几年python之火不用多说,最近开始利用时间自学python,在学习的过程中,按照自己的思路和理解记录下学习的过程,并分享出来,如果正好你也 ...
- 【学习笔记】--- 老男孩学Python,day2
今天正式上课的第一天,好害怕.好紧张.好激动.好兴奋! 第一天的课程还算是比较简单吧,因为之前断断续续学的就是这点东西,算是这些都比较熟了吧 今天学习了如下课程: 1. 简单计算机组成 2. pyth ...
随机推荐
- web端权限维持【好文】
前言 关于权限维持,我之前写过一篇基于系统端的后门技术文章,如映像劫持啊,lpk之类. 内容目录: - 构造文件包含漏洞- 隐蔽性脚本木马- 构造sql注入点 正文 0x01 构造文件包含漏洞 > ...
- Vue.js 60 分钟快速入门
Vue.js 60 分钟快速入门 转载 作者:keepfool 链接:http://www.cnblogs.com/keepfool/p/5619070.html Vue.js介绍 Vue.js是当下 ...
- Java - 获取帮助信息
在线开发文档 Java SE 8 Java SE 8 Developer Guides Java SE 8 API Specification Java API Specifications 离线开发 ...
- vue教程2-03 vue计算属性的使用 computed
vue教程2-03 vue计算属性的使用 computed computed:{ b:function(){ //默认调用get return 值 } } ---------------------- ...
- numpy.random.randn()与numpy.random.rand()的区别(转)
numpy中有一些常用的用来产生随机数的函数,randn()和rand()就属于这其中. numpy.random.randn(d0, d1, …, dn)是从标准正态分布中返回一个或多个样本值. n ...
- Django Admin实现三级联动(省市区)
通过自定义Admin的模板文件实现省市区的三级联动.要求创建记录时,根据省>市>区的顺序选择依次显示对应数据. 修改记录时默认显示已存在的数据. Model class Member(mo ...
- Flyweight享元模式(结构型模式)
1.面向对象的缺点 虽然OOP能很好的解决系统抽象的问题,并且在大多数的情况下,也不会损失系统的性能.但是在某些特殊的业务下,由于对象的数量太多,采用面向对象会给系统带来难以承受的内存开销.示例代码如 ...
- 哨兵/sentinel:在算法设计中的应用
哨兵(sentinel)昨天看算法导论里对哨兵的描述后,觉得这是一种很有意思的编程思想.哨兵是一个哑对象.一般哨兵不存放任何数据,但其结构体与其他有用的元素一致.正如其字面意思,哨兵是在边界保卫祖国的 ...
- js便签笔记(7)——style、currentStyle、getComputedStyle区别介绍【转载】
转者语: 今天看jQuery源码CSS部分,里面用到了currentStyle和getComputedStyle来获取外部样式. 因为elem.style.width只能获取elem的style属性里 ...
- Spring Boot + Spring Cloud 实现权限管理系统 后端篇(七):集成 Druid 数据源
数据库连接池负责分配.管理和释放数据库连接,它允许应用程序重复使用一个现有的数据库连接,而不是再重新建立一个:释放空闲时间超过最大空闲时间的数据库连接来避免因为没有释放数据库连接而引起的数据库连接遗漏 ...