字典是一种可变容器模型,且可存储任意类型对象。键是不可变类型(且是唯一的),值可以是任意类型(不可变类型:整型,字符串,元组;可变类型:列表,字典)。字典是无序的,没有顺序关系,访问字典中的键值是通过键查询值。

字典的每个键值(key=>value)对用冒号(:)分割,每个对之间用逗号(,)分割,整个字典包括在花括号({})中 ,格式如下所示:

dic={'name':'Tom','Age':20,'Sex':'man'}

创建字典

 dic1={'name':'Tom','Age':18,'Sex':man}
dic2=dic((('name','Jim'),))
print(dic1)
print(dic2)

对应操作

增:

1.

  dic1={}

  dic1['name']='Tom'  #如果name存在,则修改原name键的值。如果不存在就增加一组键值。

2.

  eg:dic1.setdefault('name','张三')     # 如果键存在不作任何修改,如果不存在就增加一组键值对。并且有返回值。如果有原键的话就返回原键的值,没有就返回新增键的值

查:(通过键来查询相应的值)

 dic1={‘name’:'Tom','age':23,'Sex':'man'}

1.dic1['name']   #查询name的值。

2.dic1.keys()    # 查看改字典的所有键,并且返回的是dict_keys类型,可用list()方法将其转换为列表。

3.dic1.values() #查看该字典的值。返回值同上。

4.dic1.items()  #查看所有的键值对。

改:

 dic1={‘name’:'Tom','age':23,'Sex':'man'}              dic2={‘name’:'Tom','age':23,'hobby':'girls'}

  1.dic1['name']='Alex'

  2.dic1.update(dic2)# 将dic2的内容加入dic1,如果有相同的键,就覆盖原值。原则是有就修改值,没有就增加键值对。

删:

 dic1={‘name’:'Tom','age':23,'Sex':'man'} 

  1.dic1.clear()  #清空字典中的键值对,但是不删除字典。

   2.del dic1['name']   #删除dic1中的某一键值对。

  3.del dic1    #删除整个dic1字典。

  4.dic1.pop('age')# 删除dic1中的某一键值对,并返回删除键的值。

  5.dic1.popitem()  #随机删除一组键值对。(很无聊的方法,不知道干嘛用的)

字典的其他操作:

  1.dic1=dict.fromkeys(['host1','host2','host3'],'test')  #新建一个字典,并且将字典初始化,host代表键,test代表值(值只能写一个,多写还是当一个处理),并且所有的键都是这个值。

  2.字典的嵌套:字典里面有字典或者列表什么的。

  3.字典的排序:排序原则是如果键或值是数字就按数字大小来排,如果是字符就按照ASCII码值的大小来排。

    dic={.............................}

    sorted(dic.items)   #对键排序

    sorted(dic.values) #对值排序  

   4.字典的遍历

      略   

python字典学习笔记的更多相关文章

  1. 0003.5-20180422-自动化第四章-python基础学习笔记--脚本

    0003.5-20180422-自动化第四章-python基础学习笔记--脚本 1-shopping """ v = [ {"name": " ...

  2. 【原】Learning Spark (Python版) 学习笔记(三)----工作原理、调优与Spark SQL

    周末的任务是更新Learning Spark系列第三篇,以为自己写不完了,但为了改正拖延症,还是得完成给自己定的任务啊 = =.这三章主要讲Spark的运行过程(本地+集群),性能调优以及Spark ...

  3. Python Click 学习笔记(转)

    原文链接:Python Click 学习笔记 Click 是 Flask 的团队 pallets 开发的优秀开源项目,它为命令行工具的开发封装了大量方法,使开发者只需要专注于功能实现.恰好我最近在开发 ...

  4. Python Flask学习笔记之模板

    Python Flask学习笔记之模板 Jinja2模板引擎 默认情况下,Flask在程序文件夹中的templates子文件夹中寻找模板.Flask提供的render_template函数把Jinja ...

  5. Python Flask学习笔记之Hello World

    Python Flask学习笔记之Hello World 安装virtualenv,配置Flask开发环境 virtualenv 虚拟环境是Python解释器的一个私有副本,在这个环境中可以安装私有包 ...

  6. 获取字段唯一值工具- -ArcPy和Python案例学习笔记

    获取字段唯一值工具- -ArcPy和Python案例学习笔记   目的:获取某一字段的唯一值,可以作为工具使用,也可以作为函数调用 联系方式:谢老师,135-4855-4328,xiexiaokui# ...

  7. Python高级学习笔记

    Python高级学习笔记,此笔记中包含Linux操作系统.Html+CSS+JS.网络协议等. 所有思维导图为本人亲手所画,请勿用于商用. 大哥们,求点赞哦. 第一天笔记:链接 第二天笔记:链接 第三 ...

  8. python基础学习笔记——字典

    字典(Dictionary) 字典是另一种可变容器模型,且可存储任意类型对象. 字典的每个键值 key=>value 对用冒号 : 分割,每个键值对之间用逗号 , 分割,整个字典包括在花括号 { ...

  9. Python入门学习笔记4:他人的博客及他人的学习思路

    看其他人的学习笔记,可以保证自己不走弯路.并且一举两得,即学知识又学方法! 廖雪峰:https://www.liaoxuefeng.com/wiki/0014316089557264a6b348958 ...

随机推荐

  1. 详细解读-this-关键字在全局、函数、对象、jQuery中的基础用法!

    一.前言 1. Javascript是一门基于对象的动态语言,也就是说,所有东西都是对象,一个很典型的例子就是函数也被视为普通的对象.Javascript可以通过一定的设计模式来实现面向对象的编程,其 ...

  2. python基础之条件循环语句

    前两篇说的是数据类型和数据运算,本篇来讲讲条件语句和循环语句. 0x00. 条件语句 条件语句是通过一条或多条语句的执行结果(True或者False)来决定执行的代码块. 可以通过下图来简单了解条件语 ...

  3. Hive任务优化(2)

    JOIN优化 1.大多数情况下,Hive会对每对Join连接对象启动一个MapReduce任务. 2.多表关联时,如果每个ON子句都使用相同的连接键的话,那么只会产生一个MapReduce Job. ...

  4. Hexo + GitHub Pages搭建博客

    搭建 Node.js 环境 为什么要搭建 Node.js 环境? – 因为 Hexo 博客系统是基于 Node.js 编写的 Node.js 是一个基于 Chrome V8 引擎的 JavaScrip ...

  5. 改变ListBoxItem选中的颜色

    改变ListBoxItem主要是改变的style 下面直接看代码吧!!! <Style TargetType="{x:Type ListBoxItem}"> <S ...

  6. SSH/HTTPS安全的本质都依赖于TLS/SSL

    1.SSH/HTTPS的安全本质是TLS/SSL. 2.1990年互联网上的网页主要是静态内容,作为信息发布,使用HTTP明文传输是可以的.不过,后来很多公司开始使用网页进行金融交易,例如:股票,于是 ...

  7. (转载)RESTful架构风格下的4大常见安全问题

    转载自<RESTful架构风格下的4大常见安全问题>,作者:马伟 伴随着RESTful架构风格的大量应用微服务架构的流行,一些本来难以察觉到的安全问题也逐渐开始显现出来.在我经历过的各种采 ...

  8. Django自定义过滤器中is_safe和need_autoescape两个参数的理解

    自定义template过滤器的方法参考文档,不再赘述 is_safe 文档说明过滤的两种最终形态,其中一种是设置register.filter(is_safe=True),但是对is_safe的具体作 ...

  9. 语音识别完成诗句的查询功能,iOS AVSpeechSynthesis语音输出结果的诗歌APP

    前言 当前的APP的查询都是使用手动输入,不仅效率低,而且查询的语句的限制比较大,不能够方便的扩展. 如果能方便的扩展查询语句,那么APP的使用就会有很大的灵活性.可以设计各种问句和语句,可以方便的和 ...

  10. SpringMVC 实现文件的上传与下载

    一  配置SpringMVC ,并导入与文件上传下载有关的jar包(在此不再赘述) 二 新建 相应 jsp 和controller FileUpAndDown.jsp <%@ page lang ...