01今日内容大纲

  • 字典初识
  • 字典使用(增删改查)
  • 字典的嵌套

02内容回顾

  • 列表:容器型数据类型,可以承载大量的数据,有序的数据

      • append 追加
      • insert 插入
      • extend 迭代追加
    • 删:
      • pop 按照索引删除,有返回值,默认删除最后一个
      • remove 按照元素删除
      • clear 清空
      • del 索引,切片(步长)
      • l1[1]
      • l1[1:3]
      • l1[1:4;2]
    • 查:索引切片;for循环
  • 元组:只读列表,()拆包 元组拆包 元组拆包 元组拆包
  • range:看做:可以自己控制范围的数字列表,但是他不是列表

03 具体内容

  • 字典的初识:

    • why:

      • 列表可以存储大量的数据,数据之间的关联性不强
      • 列表的查询速度比较慢
    • what:容器容数据类型:dict

    • how:

      • 数据的分类(可变和不可变)

      • 可变(不可哈希)的数据类型:list dict set(集合)

      • 不可变(可哈希)的数据类型:str bool int tuple

      • 字典:{}括起来,以 键值对 的形式存储的容器型数据类型

        • dic={'太白':

          {'name':'太白金星','age':18,'sex':'男'},

          'python22期':['大壮','小壮','hjb'],

          }

      • 键必须是不可变的数据类型,也就是可哈希:int,str(bool,tuple几乎不用)

      • 值可以是任意数据类型,对象

      • 字典3.5x版本之前是无序的

      • 字典3.6x会按照初次建立字典的顺序排列,学术上不认为是有序的

      • 字典3.7x以后都是有序的

      • 字典的优点:查询速度快;关联性强

      • 字典的缺点:以空间换时间

    • 字典的创建方式:

      • 方式一:dic=dict((('one',1),('two',2),('three',3)))
      • 方式二:dic=dict('one'=1,'two'=2,'three'=3)
      • 方式三:dic=dict({'one':1,'two':2,'three':3})
    • 字典的增删改查

      dic = {'name': '太白', 'age': 18, 'hobby_list': ['直男', '钢管', '开车']}

      • 增:

        • dic['sex']='男',如果key存在,则直接修改
        • dic.setdefault('sex','男')
      • 删:

        • pop 按照键删除键值对,有返回值*******

          • 设置第二个参数则无论字典中有无此键都不会报错

          • dic.pop('age')

          • 因为有返回值,所以还可以写成ret=dic.pop('age') print(ret)

          • ret=dic.pop('hobby','没有此键')

            print(ret)

            print(dic)

        • clear 清空

          dic.clear()

          print(dic)

        • del **

          del dic('age')

      • 改:

        dic['name']='alex'

        print(dic)

      • 查:

        • l1=dic.get('hobby_list')

          l2=dic.get('hobby_list','没有此键沙雕')

        • 三个特殊的:

          keys() values() items()

          • 可以转化成列表

            print(list(dic.keys()))

          • key

            for key in dic.keys():

            ​ print(key)

            for key in dic:

            ​ print(dic)

            两个for循环输出的结果是一样的

          • value

            dic={'one':1,'two':2,'three':3}
            print(dic.values())
            #返回值:dict_values([1, 2, 3])
            dic={'one':1,'two':2,'three':3}
            for value in dic.values():print(value)
            

            上边的valuefor循环中必须是 dic.values(),如果是for value in dic,则输出 one two three

          • item

            for key,value in dic.items():print(key,value)

            感觉item多用于拆包

    • 字典的嵌套

      dic = {
      #     'name': '汪峰',
      #     'age': 48,
      #     'wife': [{'name': '国际章', 'age': 38},],
      #     'children': {'girl_first': '小苹果','girl_second': '小怡','girl_three': '顶顶'}
      # }
      # 1. 获取汪峰的名字。
      # print(dic['name'])
      # 2.获取这个字典:{'name':'国际章','age':38}。
      # print(dic['wife'][0])
      # 3. 获取汪峰妻子的名字。
      # print(dic['wife'][0]['name'])
      # 4. 获取汪峰的第三个孩子名字。
      # print(dic['children']['girl_three'])

04 今日总结

  • 字典:查询速度快,数据有关联性

    • 键不可变的数据类型,(str int),唯一
    • 值:任意数据类型,对象
    • 增删改查(已经是阉割版,全部都要记住)***
    • 字典的嵌套 ***

      tomorrow

      明天讲理论性偏多:id is == 小数据池,集合。

转载于:https://www.cnblogs.com/miseryGOD/p/10813353.html

python 05 字典相关推荐

  1. Python之字典(定义、方法、例题)

    文章目录 写在开头的话 Python之字典 00. 概述 字典dict定义. 初始化 01. 字典元素的访问 02. 字典增加和修改 03. 字典删除 04. 字典遍历和移除 05. 字典的key 0 ...

  2. python 判断字典是否包含某个key,以及对应的value 值

    python 判断字典是否包含某个key 可以使用 in 来判断 具体如下: num = {"a": 1, "b": 2, "c": 3} ...

  3. python嵌套字典取值_python嵌套字典比较值与取值的实现示例

    python嵌套字典比较值与取值的实现示例 本文通过示例给大家介绍了python嵌套字典比较值,取值,分享出来供大家参考学习,下面话不多说了,来一起看看详细的介绍吧. 示例代码 #取值import t ...

  4. python实现字典遍历稳定有序使用collection包OrderedDict

    python实现字典遍历稳定有序使用collection包OrderedDict **注意虽然python3.6之后,dict本身也会保留插入的顺序,但是并不是严格保证的: Python3.6中的字典 ...

  5. python 遍历字典

    python 遍历字典 d = {'a': 1, 'b': 2, 'c': 3, 4: 'd', 5: 'e'} for key in d:print(key, ":", d[ke ...

  6. python字典怎么排序_如何对python的字典进行排序

    我们知道Python的内置dictionary数据类型是无序的,通过key来获取对应的value.可是有时我们需要对dictionary中 的item进行排序输出,可能根据key,也可能根据value ...

  7. 如何在Python中将字典键作为列表返回?

    本文翻译自:How to return dictionary keys as a list in Python? In Python 2.7 , I could get dictionary keys ...

  8. python 对字典排序

    工作中经常需要对python的字典进行排序,下面就简单介绍一下如何对字典排序: 使用sorted命令,默认进行从大到小字母序排序: >>> from operator import ...

  9. python中字典按键或键值排序

    字典排序 在程序中使用字典进行数据信息统计时,由于字典是无序的所以打印字典时内容也是无序的.因此,为了使统计得到的结果更方便查看需要进行排序.Python中字典的排序分为按"键"排 ...

最新文章

  1. 数据库跟缓存的双写一致性
  2. excel表格怎么调整行高和列宽_8个实用Excel小技巧,谁用谁说好
  3. 深度挖掘 Laravel 生命周期
  4. 利用Java针对MySql封装的jdbc框架类 JdbcUtils 完整实现(包含增删改查、JavaBean反射原理,附源码)...
  5. 数据科学最常用流程CRISP-DM,终于有人讲明白了
  6. 证监会依法对4宗案件作出行政处罚
  7. Ubuntu 13.04 双显卡安装NVIDIA GT 630M驱动
  8. linux虚拟工具平台,【工具】打造适用于 Linux 的 Windows 子系统——替代虚拟机的好帮手...
  9. 区块链应用大数据的优势有哪些
  10. 服务器开机显示密码过期,Windows server提示密码过期 更改密码使用期限方法
  11. 连接局域网打印机用计算机名,如何连接局域网内共享的打印机
  12. 数学建模三十六计——线性模型
  13. 【论文学习】Cooling-Shrinking Attack: Blinding the Tracker with Imperceptible Noises论文学习
  14. java粘包_Java网络通信基础系列-Netty粘包与拆包
  15. 如何查询计算机上次登录时间,怎么查看电脑的上一次开机时间
  16. 跨境电商亚马逊2022年再去做亚马逊好做吗
  17. 字符移动,大写字母后移且保持相对位置不变、调整顺序奇数位于偶数之前
  18. 如何处理Java异常及常见异常
  19. VM虚拟机Ubuntu设置静态IP方法
  20. 小米品牌广告引擎与算法实践

热门文章

  1. 压缩包文件设置了加密怎么解密
  2. MagicBook屏幕频闪解决方案(Windows、MacOS)
  3. WPS操作时会留下历史记录如何关闭历史功能保护个人隐私
  4. 华为路由器负载均衡_NAT负载均衡-----华为路由器
  5. 推荐一些国内的jQuery CDN免费服务[转]
  6. 利久贝分享:如何摆脱“穷人思维”?
  7. 文秘类计算机,文秘类包括哪些专业
  8. JQuery实现音乐导航栏的简单实现
  9. 人脸识别库face_recognition安装简单教程
  10. 广告点击率预估中的特征选择