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

字典的每个键值(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. 再起航,我的学习笔记之JavaScript设计模式26(解释器模式)

    解释器模式 概念介绍 解释器模式(Interpreter):给定一个语言,定义它的文法的一种表示,并定义一个解释器,这个解释器使用该表示来解释语言中的句子. 获取元素在页面中的路径 我们都知道获取一个 ...

  2. 解决linux下部署科大讯飞时的版本过低问题

    在将项目部     署到阿里云服务器之后,需要将科大讯飞SDK下的libmsc64.so依赖库文件上传至/usr/java/jdk1.8.0_121/jre/lib/amd64路径下   在Windo ...

  3. jenkins~集群分发功能的具体实现

    前一讲主要说了jenkins分发的好处<jenkins~集群分发功能和职责处理>,它可以让具体的节点干自己具体的事,比如windows环境下的节点,它只负责编译,发布windows的生态环 ...

  4. 关于CSDN, cnblog, iteye和51cto四个博客网站的比较与分析

      http://blog.csdn.net/pkucl1/article/details/6629819 CSDN: http://blog.csdn.net/ cnblog: http://www ...

  5. Ubuntu安装opencv3.x系列

    p { margin-bottom: 0.25cm; direction: ltr; color: rgb(0, 0, 0); line-height: 120% } p.western { font ...

  6. Java历程-初学篇 Day07 循环结构2 for循环

    一,格式 for(赋值语句//为循环变量赋初值;条件语句//循环结构的循环条件;赋值语句//迭代,修改循环变量的值){ //循环体; } 二,简单举例 for(int i=1;i<=10;i++ ...

  7. 实例化vue之前赋值html元素导致事件失效

    先实例化Vue对象,再操作其他对象,Vue对象声明时会渲染html容器内的所有元素, 会导致元素事件失效或dom元素重新创建,所以涉及html元素的对象都要在实例化Vue之后执行. 下面是简要的例子, ...

  8. HDU2874 LCA Tarjan

    不知道为什么_add2不能只用单方向呢...........调试了好多次,待我解决这个狗血问题 #include <iostream> #include <vector> #i ...

  9. jsp web JavaBean MVC 架构 EL表达式 EL函数 JSTL

     一.JavaBean概念(非常重要) 1.JavaBean就是遵循一定书写规范的Java类型(开发中:封装数据) a.必须有默认的构造方法,类必须是public的   public class  ...

  10. Window2008 R2(64位)使用codesmith连接Sqlite

    ①打开C:\Windows\Microsoft.NET\Framework64\v4.0.30319\Config目录,找到machine.config文件新增 <add name=" ...