一.字典:

1. 字典

  dict 用{}来表示 键值对数据 {key:value} 唯一性

  键   都必须是可哈希的 不可变的数据类型就可以当做字典中的键

  值   没有任何限制

1.1  字典的创建:

  (1)dic = {k:v}

  (2)fromkeys

  fromkeys() 函数用于创建一个新字典,以序列 seq 中的每个元素做字典的键,value 为字典所有键对应的初始值。

  • 语法:dict = dict.fromkeys(seq, value )
  • seq -- 字典键值列表。 
  • value -- 可选参数, 设置键序列(seq)的值。

2. 增删改查

 增:

  dic[key] = value            键不在字典中存在,添加键值对

  dic.setdefault(key,value) 如果键在字典中存在不进行任何操作,否则就添加

  可以通过key查询,没有这个key返回None

dic = {'火女':'安妮','火男':'布兰德','维恩':'暗影猎手','剑豪':'哈莎阁'}

dic['火女'] = '人头狗'   # 新增
print(dic) dic.setdefault('火女','安妮') # 如果键在字典中存在就不进行任何操作,不存在就进行添加{'火女':'安妮','火男':'布兰德','维恩':'暗影猎手','剑豪':'哈莎阁'}
dic.setdefault('狗屎','火男')
print(dic) #{'火女': '安妮', '火男': '布兰德', '维恩': '暗影猎手', '剑豪': '哈莎阁', '狗屎': '火男'}

 删:

  pop(key) 有返回值 返回的是被删除value
  del dic[key]
  popitem() 随机删除     #返回值 一个元组 (key,value)

  clear() 清空字典

 改:

  dic[key] = value      # 强制修改

  dic.update(dic1)   #更新  用dic1对 dic更新

dic = {'火女':'小熊','维恩':'暗影','剑豪':'hash aq'}
dic1 = {'火女':'安妮','火男':'布兰德','维恩':'暗影猎手','剑豪':'哈莎阁'}
dic.update(dic1)
print(dic) # {'火女': '安妮', '维恩': '暗影猎手', '剑豪': '哈莎阁', '火男': '布兰德'}

 查:

  get(key, 返回内容)         #没有返回None 或 可以指定返回内容
  dic[key]           #没有这个键的时候查询会报错

  setdefault(key)   没有返回None

  for 循环 查

3.字典的其他操作:

  keys 获取到所有的键存在一个高仿的列表中

  values 获取到所有的值存在一个高仿的列表中

  items 获取到所有的键值对已元祖的形式存在一个高仿的列表中

 解构: 

a,b = 1, 2

a,b = (1,2)

a,b = [1,2]

4. 字典的嵌套:

dic = {
'name':'王二',
'age':43,
'wife':{
'name':'张三',
'age':39,
'salary':100000
},
'baby':[
{'name':'熊大','age':18},
{'name':'熊二','age':15},
] } dic['baby'][0]['age'] = 19   print(dic)

dict字典;dict的操作的更多相关文章

  1. dict 字典的常用操作

    #dict 字典的常用操作: id_db.get() #获取 id_db.update() #更新(覆盖)字典 id_db.values() #打印字典里所有的values id_db.keys() ...

  2. python基础(六)dict字典和文件操作open

    字典dict 使用key来标注value的数据类型,key和value是一一对应的.在字典中key是唯一的,所以字典也是无序的. #定义一个字典 dict = { 'name' : 'sylar', ...

  3. Python3中dict字典的相关操作函数

    字典对象的内建函数 1. clear() 清空字典. 例: >>> a = {1:3, 2:4} >>> a.clear() >>> a {} 2 ...

  4. python基础2--数据结构(列表List、元组Tuple、字典Dict)

    1.Print函数中文编码问题 print中的编码:# -*- coding: utf-8 -*- 注:此处的#代表的是配置信息 print中的换行符,与C语言相同,为"\n" 2 ...

  5. Redis原理再学习04:数据结构-哈希表hash表(dict字典)

    哈希函数简介 哈希函数(hash function),又叫散列函数,哈希算法.散列函数把数据"压缩"成摘要,有的也叫"指纹",它使数据量变小且数据格式大小也固定 ...

  6. D11 列表 list 元祖 字典dict

    取值 name = "alexdfg" print(name[3:5]) 取出 ex name = "alexdfg" print(name[3]) 取出e 列 ...

  7. python数据类型:字典dict常用操作

    字典是Python语言中的映射类型,他是以{}括起来,里面的内容是以键值对的形式储存的: Key: 不可变(可哈希)的数据类型.并且键是唯一的,不重复的. Value:任意数据(int,str,boo ...

  8. Python操作字典(dict)

    一.字典定义 >>> dict={} 二.字典元素添加 >>> dict['性别']='男' >>> dict {'性别': '男'} >& ...

  9. python字典dict的增、删、改、查操作

    ## python字典dict的增.删.改.查操作dict = {'age': 18, 'name': 'jin', 'sex': 'male', }#增# dict['heigh'] = 185 # ...

随机推荐

  1. centos7 时间修改

    转子 http://blog.csdn.net/kuluzs/article/details/52825331 在CentOS 6版本,时间设置有date.hwclock命令,从CentOS 7开始, ...

  2. C++——代码运行过程详解

    #include <iostream> using namespace std; ;//初始化的全局变量:保存在数据段 char *p1;//未初始化的全局变量:保存在BSS段 int m ...

  3. 安装了Anaconda之后,Maya运行报错,Python 找不到 Maya 的 Python 模块

    以前Maya用的好好地,结果安装了Anaconda之后,maya启动以后,日志就会报错(如下),只能自主建模,不能打开以前创建的模型,也不能导入fbx,错误提示就是Maya找不到Python模块,在网 ...

  4. activeMQ集群搭建及高可用

    三台服务器搭建如下的集群,达到了高可用.也同时达到了负载的目的: /****************************************************************** ...

  5. 一个新手后端需要了解的前端核心知识点之position(一)

    以下内容是基于观看慕课网视频教程总结的知识点,边打代码边总结,符合自己的思维习惯.不是针对新手入门 我做程序的初衷是想做一个网站出来.HTML语言当然重要啊,缺什么就百度什么,很浪费时间,还是好好的打 ...

  6. 组织机构sql

    with cte as (     select vcOrganID, vcParentID, vcOrganName, 0 as lvl from tbOrgan     where vcOrgan ...

  7. 在IIS和Nginx上通过代理部署基于ant-design-pro前端框架开发的应用

    一.本文解决的主要问题 通过对前端静态资源站点进行代理服务设置,实现对后端API接口的代理,从而实现前端的独立部署,即通过代理的设置实现对http://IP0:Port0/api/xxx的请求转发至h ...

  8. getparameter()和getattribution()的区别的 java详细

    两个Web组件之间为转发关系时,转发源会将要共享 request范围内的数据先用setAttribute将数据放入到HttpServletRequest对象中,然后转发目标通过 getAttribut ...

  9. PowerDesigner连接MySQL

    1.使用JDBC连接,地址:http://dev.mysql.com/downloads/connector/j/ 2.需安装Java(应该只要JRE):http://www.oracle.com/t ...

  10. Hadoop Shell

    1.常用的一些Shell 再好的博客,都不如官方文档好用: http://hadoop.apache.org/docs/r1.0.4/cn/hdfs_shell.html