详细方法: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 字典的更多相关文章

  1. 学习笔记《简明python教程》

    学习笔记<简明python教程> 体会:言简意赅,很适合新手入门 2018年3月14日21:45:59 1.global 语句 在不使用 global 语句的情况下,不可能为一个定义于函数 ...

  2. python3.4学习笔记(二十三) Python调用淘宝IP库获取IP归属地返回省市运营商实例代码

    python3.4学习笔记(二十三) Python调用淘宝IP库获取IP归属地返回省市运营商实例代码 淘宝IP地址库 http://ip.taobao.com/目前提供的服务包括:1. 根据用户提供的 ...

  3. python3.4学习笔记(二十一) python实现指定字符串补全空格、前面填充0的方法

    python3.4学习笔记(二十一) python实现指定字符串补全空格.前面填充0的方法 Python zfill()方法返回指定长度的字符串,原字符串右对齐,前面填充0.zfill()方法语法:s ...

  4. python3.4学习笔记(二十) python strip()函数 去空格\n\r\t函数的用法

    python3.4学习笔记(二十) python strip()函数 去空格\n\r\t函数的用法 在Python中字符串处理函数里有三个去空格(包括'\n', '\r', '\t', ' ')的函数 ...

  5. python3.4学习笔记(十二) python正则表达式的使用,使用pyspider匹配输出带.html结尾的URL

    python3.4学习笔记(十二) python正则表达式的使用,使用pyspider匹配输出带.html结尾的URL实战例子:使用pyspider匹配输出带.html结尾的URL:@config(a ...

  6. 【Python学习笔记之一】Python关键字及其总结

    前言 最近在学习Java Sockst的时候遇到了一些麻烦事,我觉得我很有必要重新研究学习Python这种脚本语言,参考大神的经验,淘到了一本学习Python的好书<"笨方法" ...

  7. Linux Shell输出颜色字符学习笔记(附Python脚本实现自动化定制生成)

    齿轮发出咔嚓一声,向前进了一格.而一旦向前迈进,齿轮就不能倒退了.这就是世界的规则. 0x01背景 造了个轮子:御剑师傅的ipintervalmerge的Python版本.觉得打印的提示信息如果是普通 ...

  8. python学习笔记1之-python简介及其环境安装

    python学习笔记之-python简介及其环境安装 最近几年python之火不用多说,最近开始利用时间自学python,在学习的过程中,按照自己的思路和理解记录下学习的过程,并分享出来,如果正好你也 ...

  9. 【学习笔记】--- 老男孩学Python,day2

    今天正式上课的第一天,好害怕.好紧张.好激动.好兴奋! 第一天的课程还算是比较简单吧,因为之前断断续续学的就是这点东西,算是这些都比较熟了吧 今天学习了如下课程: 1. 简单计算机组成 2. pyth ...

随机推荐

  1. 为ElasticSearch添加HTTP基本认证

    ES的HTTP连接没有提供任何的权限控制措施,一旦部署在公共网络就容易有数据泄露的风险,尤其是加上类似elasticsearch-head这样友好的前端界面,简直让你的数据瞬间裸奔在黑客的眼皮底下.项 ...

  2. Swift5 语言指南(二十三) 协议

    甲协议定义的该适合特定任务或片的功能的方法,属性和其他要求的蓝图.然后,可以通过类,结构或枚举来采用该协议,以提供这些要求的实际实现.任何满足协议要求的类型都被认为符合该协议. 除了指定符合类型必须实 ...

  3. docker容器启动参数

    docker run [option] 镜像名 [向启动容器中传入的命令] 常用可选参数说明: -i 表示以“交互模式”运行容器 -t 表示容器启动后会进入其命令行.加入这两个参数后,容器创建就能登录 ...

  4. 《deep sort》复现过程

    目录 1. 准备代码与数据 deep_sort开源代码 克隆到本地服务器 git clone https://github.com/nwojke/deep_sort.git 下载MOT16数据集(MO ...

  5. POJ 2590

    #include<iostream> #include<algorithm> #define MAXN 1000000 using namespace std; unsigne ...

  6. 解决Navicat Premium终端操作mysql ONLY_FULL_GROUP_BY错误

    解决navicate终端操作mysql ONLY_FULL_GROUP_BY错误     问题描述: [Err] 1055 - Expression #1 of SELECT list is not ...

  7. (转)WebSphere禁用SSLv3和RC4算法教程

    原文:https://www.cnblogs.com/lsdb/p/7126399.html WebSphere经常会报“SSL 3.0 POODLE攻击信息泄露”和"SSL/TLS 受诫礼 ...

  8. vtk文件编写

    在paraview中加载vtk文件,可以很好的显示三维空间图像,如下cpp代码: #include <iostream> #include <fstream> #include ...

  9. 五、CLR加载程序集代码时,JIT编译器对性能的产生的影响

    1.CLR首次加载代码造成的性能损失 四.CLR执行程序集中代码介绍了CLR在首次执行一个类的时,会初始化一个内部结构,然后当目标方法被首次调用时,JITComplier函数(JIT编译器)会验证IL ...

  10. 25-hadoop-hive-函数

    内置函数: 函数分类: 内置函数查看: show funcitons; 查看函数描述: DESC FUNCTION concat; 具体见: https://cwiki.apache.org/conf ...