一丶字典

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

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

  值  没有任何限制

二丶字典的增删改查

  1.增

    dic[key] = value

    dic.setdefault(key,value)

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

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

  2.删

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

    del dic[key]

    popitem  随机删除

    clear()     清空字典

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

  3.改

    dic[key] = value

    dic.update(字典)

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

  4.查

    get(key)

    dic[key]

    for  循环

    setdefault(key)

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

三丶字典的其它操作

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

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

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

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

四丶字典的嵌套

 1 # 字典的嵌套
 2 dic1 = {
 3     "name":"汪峰",
 4     "age":48,
 5     "sex":"男",
 6     "wife":{
 7         "name":"章子怡",
 8         "age":36,
 9         "sex":"女",
10     },
11     "baby":[
12         {"name":"熊大","age":18},
13         {"name":"熊二","age":16}
14     ]
15 }
16 print(dic1)
17 dic1["baby"][1]["age"] = 14
18 print(dic1)

  

转载于:https://www.cnblogs.com/qicun/p/9402047.html

字典(dict),增删改查,嵌套相关推荐

  1. day 05 字典dic(增删改查 嵌套)

    字典的初识: why: 列表可以存储大量的数据,数据之间的关联性不强 ['太白', 18, '男', '大壮', 3, '男'] 列表的查询速度比较慢. what:容器型数据类型:dict. how: ...

  2. python字典进行大写转化_python之字典的增删改查

    1.列表的缺点 列表可以存储大量的数据,数据之间的关联性不强. 列表的查询速度比较慢. 容器型数据类型:dict 2.数据类型的分类(可变与不可变) 可变(不可哈希)的数据类型:list dict s ...

  3. 字典,和字典的增删改查

    1. 什么是字典 字典是以key:value的形式来保存数据 用{}表示. 存储的是key:value 2. 字典的增删改查(重点) 1. 添加 dic[新key] = 值 setdefault() ...

  4. python字典增删改查项目_字典的增删改查如何操作?

    什么是字典? 字典是一种可变,无序,可迭代的储存形式 在字典中它们的储存是以键值对来存的! 也就是吧两个相关的值关联起来,通过我的键来查找我的值! 可以存储各种的数据类型 ! 字典的操作跟列表一样,分 ...

  5. # 遍历删除字典元素_Python基础知识:快速了解字典的增删改查以及自定义不可变字典...

    字典在很多的高级语言中是很常见的,java中的hashmap,php中的键值对的数组,python中的是dict,它是一个可变的容器模型,可以存储任意的数据结构,但是容器中的每个元素都是以键值对的形式 ...

  6. 列表的增删改查,嵌套等,及元组的查

    一丶列表 1.什么是列表 列表是一个可变的数据类型 列表由[]表示每一项元素,使用逗号隔开,列表什么都能装,能装对象的对象. 列表可以装大量的数据 lst = ["赵四",&quo ...

  7. python嵌套列表操作_python 列表增删改查 嵌套 相关操作

    ---恢复内容开始--- 今日内容: 一.列表 1.  列列表的介绍        列列表是python的基础数据类型之⼀一 ,其他编程语⾔言也有类似的数据类型. 比如JS中的数 组, java中的数 ...

  8. 字典的增删改查 daty 5

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

  9. python图书管理系统增删改查_python基础-字典的增删改查

    字典 字典的创建方式: # 方式一: dict1 = dict((("one", 1), ("two", 2), ("three", 3)) ...

最新文章

  1. 朴素贝叶斯知识点概括
  2. 全面分析阿里数据中台,小白也能看懂 | CSDN原力计划
  3. java 桶排序_[图解] 桶排序
  4. 错误中积累经验,BUG中寻发展,总结中提升
  5. mysql_upgrade 升级_采用MySQL_upgrade升级授权表方式升级
  6. 字符输出流_Writer类FileWriter类介绍
  7. android点击通知跳转到服务,Android 接收推送消息跳转到指定页面的方法
  8. memcache在ThinkPHP中的使用1---PHP下安装memcache
  9. 首次披露!阿里线下智能方案进化史
  10. python练习笔记——利用信号signal处理僵尸进程
  11. mysql面试关联查询语句_sql语句多表联查语句的练习(面试题)
  12. Class com.fasterxml.jackson.databind.ser.BasicSerializerFactory can not access a member of class com
  13. dingtalk 推送手机号信息 golang_Python学习第九十六天:Python调用钉钉机器人推送消息...
  14. 【常用 JS 插件】jQuery TreeTable 树表格插件
  15. linux宝塔怎么添加二级域名,如何绑定二级域名使用宝塔面板?
  16. 有一个会做饭的男朋友幸福么?
  17. 光猫、路由器、交换机、wifi通俗释义
  18. 前端背景图放置_html 多张背景图片并存
  19. SystemUI流程
  20. 达梦数据库odbc的安装

热门文章

  1. yolov5模型pt转wk(HISI3559)
  2. SDWAN-viptela设备上线配置
  3. Layui数据表格显示无数据提示问题
  4. PCIE Hot Plug 一般流程
  5. 2016年8月13日 星期六 --出埃及记 Exodus 16:14
  6. linux内核空间内存动态申请
  7. Windows 上帝模式「完全控制面板」的介绍和使用
  8. win10计算机管理器在哪,Windows10开启服务管理器图文教程|Win10系统服务管理器在哪...
  9. 满足条件的整数 - 详解
  10. 如何更高效地在IT职场中摸爬滚打