一丶字典

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

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

  值  没有任何限制

二丶字典的增删改查

  1.增

    dic[key] = value

    dic.setdefault(key,value)

    如果键在字典中存在,则不进行任何操作,否则就添加,可以通过key查询,没有这个key则返回None

 # 增
dic = {"name":"周杰伦","age":45,"sex":"boy","money":100000}
dic["sex"] = "女" #增加,如果key重复了,会替换掉原来的value
print(dic)
dic.setdefault("hobby","listen music")
print(dic)

  2.删

    pop(key) 有返回值,返回的是被删除的value

    del dic[key]

    popitem  随机删除

    clear()     清空字典

 # 删
dic = {"name":"周杰伦","age":45,"sex":"boy","money":100000}
ret = dic.pop("money") #有返回值,返回的是被删除的value
print(dic) #{'name': '周杰伦', 'age': 45, 'sex': 'boy'}
print(ret) #被删除的值
del dic["sex"] #{'name': '周杰伦', 'age': 45, 'money': 100000}
print(dic)
dic.popitem() #随机删除
print(dic) #{'name': '周杰伦', 'age': 45, 'sex': 'boy'}
dic.clear() #全部清空 {}
print(dic)

  3.改

    dic[key] = value

    dic.update(字典)

 #改
dic = {"name":"周杰伦","age":45,"sex":"boy","money":100000}
dic["age"] = "" #强制修改值
print(dic) #{'name': '周杰伦', 'age': '40', 'sex': 'boy', 'money': 100000}
dic1 = {"name":"李晨","bug":"唯一一个","age":38}
dic2 = {"name":"范冰冰","邓超":"玛丽","age":26}
dic2.update(dic1) #把dic1中的内容更新到dic2中,如果存在了key,则替换,如果不存在,则添加进去
print(dic1)
print(dic2)

  4.查

    get(key)

    dic[key]

    for  循环

    setdefault(key)

 1#查
dic = {"name":"周杰伦","age":45,"sex":"boy","money":100000}
print(dic.get("sex")) #boy
print(dic["age"]) #
for a in dic: #for 循环默认是获取字典中的键(key)
print(a)
print(dic[a]) #获取的是字典中的值(value)
ret = dic.setdefault("name","谢文东") #首先判断原来的字典中有没有这个key,如果没有,执行新增
print(dic) #用这个key去字典中查询,返回查找到的结果
print(ret)

三丶字典的其它操作

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

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

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

 dic = {"name":"周杰伦","age":45,"sex":"boy","money":100000}
print(dic.keys()) #获取到所有的键存在一个高仿的列表中
##dict_keys(['name', 'age', 'sex', 'money'])
print(dic.values()) #获取到所有的值存在一个高仿的列表中
##dict_values(['周杰伦', 45, 'boy', 100000])
print(dic.items()) #获取到所有的键值对,以元组的形式存在一个高仿的列表中
##dict_items([('name', '周杰伦'), ('age', 45), ('sex', 'boy'), ('money', 100000)])

四丶字典的嵌套

 # 字典的嵌套
dic1 = {
"name":"汪峰",
"age":48,
"sex":"男",
"wife":{
"name":"章子怡",
"age":36,
"sex":"女",
},
"baby":[
{"name":"熊大","age":18},
{"name":"熊二","age":16}
]
}
print(dic1)
dic1["baby"][1]["age"] = 14
print(dic1)

  

字典(dict),增删改查,嵌套的更多相关文章

  1. python 字典dict 增删改查操作

    初始化: a. data_dict = {} b. data_dict1 = dict() c. data_dict2 = {'key':'value'} 新增: a. data_dict[key]= ...

  2. DAY5(PYTHON) 字典的增删改查和dict嵌套

    一.字典的增删改查 dic={'name':'hui','age':17,'weight':168} dict1={'height':180,'sex':'b','class':3,'age':16} ...

  3. 2018.8.1 python中字典的增删改查及其它操作

    一.字典的简单介绍 1.dict 用{}来表示       键值对数据           {key:value} 唯一性 2.键都必须是可哈希,不可变的数据类型就可以当做字典中的键 值没有任何限制 ...

  4. python字典的增删改查

    字典dict 知识点: {}括起来,以键值对形式存储的容器性数据类型: 键-必须是不可变数据类型,且是唯一的: -值可以是任意数据类型.对象. 优点:关联性强,查询速度快. 缺点:以空间换时间. 字典 ...

  5. 列表(索引切片 增删改查 嵌套) range 元组的初识

    li = ["alex", "WuSir", "ritian", "barry", "wenzhou" ...

  6. python 字典使用——增删改查

    创建字典 dict= {key1 : value1, key2 : value2 } key : value 为键值对 增: dict[key] = value 删: del dict[key] 改: ...

  7. 字典的增删改查 daty 5

    字典:python中非常重要的数据类型,在python中唯一一个映射的数据类型数据类型分类 按照数据可变与不可变: # 不可变数据类型: int str bool tuple # 可变数据类型: li ...

  8. day6 note 字典的增删改查(以及setdefault用法补充)

    今天的内容主要是join的用法和字典的用法,由于已经有前面的列表作为基础,所以还比较简单,不过因为昨天的作业比较难也比较多,所以作业的讲解占用的时间比较长.我需要好好消化一下作业的部分. 思维导图: ...

  9. dict 增删改查

    # dict # 数据类型划分: 可变数据类型,不可变数据类型 # 不可变数据类型: 元组 bool int str set (又被称为可哈希) # 可变数据类型: list dict (又被称为不可 ...

随机推荐

  1. openStack灾备方案说明

    本系列会分析OpenStack 的高可用性(HA)概念和解决方案: (1) OpenStack 高可用方案概述 (2) Neutron L3 Agent HA - VRRP (虚拟路由冗余协议) (3 ...

  2. C# Andriod AES 加密算法

    android端: package com.kingmed.http; import java.io.UnsupportedEncodingException; import javax.crypto ...

  3. 在windwo server2008服务器上配置ftp服务器、及配置phpstrom工具、实现项目同步。

    在windwo server2008服务器上配置ftp服务器.及配置phpstrom工具.实现项目同步. 在windwo server2008服务器上配置ftp服务器 参考该篇文章:http://bl ...

  4. 怎么将vim的剪切版设置成系统的剪切版

    如果你用vim敲完了代码,怎么把代码提交到ACMoj的粘贴版上呢. 这是个问题. 去网上查了一下,首先有人说可以在vimrc里面添加 set clipboard=unnamed 我试了一下,没有效果. ...

  5. POJ - 3268 Silver Cow Party SPFA+SLF优化 单源起点终点最短路

    Silver Cow Party One cow from each of N farms (1 ≤ N ≤ 1000) conveniently numbered 1..N is going to ...

  6. HTML前端入门归纳——控件

    本人一直在从事.net的开发,界面都是采用的WPF,近期花了一个多月进行HTML前端的学习,在这里呢进行学习总结和归纳. 本系列将主要分为4个模块: 控件 样式 布局 JavaScript 根据多年W ...

  7. AtCoder Beginner Contest 052

    没看到Beginner,然后就做啊做,发现A,B太简单了...然后想想做完算了..没想到C卡了一下,然后还是做出来了.D的话瞎想了一下,然后感觉也没问题.假装all kill.2333 AtCoder ...

  8. poj2528(线段树区间替换&离散化)

    题目链接: http://poj.org/problem?id=2528 题意: 第一行输入一个 t 表 t 组输入, 对于每组输入: 第一行  n 表接下来有 n 行形如 l, r 的输入, 表在区 ...

  9. UOJ #32. 【UR #2】跳蚤公路【Floydbellman-ford】

    首先看这个范围很夸张但是其实有限制的也就在1e18*n范围里(走完一圈的边权),然后限制一定是有负环 用Floyd传递闭包,然后设f[i][j][k]为从1走了i步到j并且有k个x的最短路,用B-F处 ...

  10. [Xcode 实际操作]七、文件与数据-(11)数据持久化存储框架CoreData的使用:创建CoreData实体并插入数据

    目录:[Swift]Xcode实际操作 本文将演示[CoreData]数据持久化存储框架的使用. 点击[Create a new Xcode project]创建一个新的项目 ->[Single ...