美文网首页
核心数据结构之字典

核心数据结构之字典

作者: 时光偷走了青春 | 来源:发表于2019-01-02 22:23 被阅读0次

    字典

    1映射类型数据结构介绍

    .在字典存放的每个元素都是以一对键值对。
    .在python中字典通常被称为dict,键称为 key,值称为value
    .字典中不可以存在相同的key,但是value可以。

    2高效创建字典

    空字典

    image.png

    字典中的元素是无序的

    image.png

    3dict()转换为字典

    接收一个序列类型的参数,这个序列类型中的每个元素必须是成对出现的。


    image.png

    4,zip()并行迭代

    zip() 函数可以对多个序列进行并行迭代


    image.png

    利用zip()函数可以对具有相同数量的元素的序列进行配对,返回的值不是元组,也不是列表,而是一个整合在一起的可迭代变量。


    image.png

    5.哪些数据可以作为字典的key

    key通常是字符串

    也可以是任意不可变类型:

    布尔型 True 1 False 0
    整型 100 200
    浮点型 1.0 3.415
    元组 (1,) (1, 2, 3)
    字符串 'host_name'

    关于字典的key

    在 Python 内部用一个哈希表来维护字典中的 key 到 value 的映射关系。
    所以 key 必须是可哈希的。
    判断一个对象是否可哈希,可以使用 hash() 函数
    返回一个整数,就是可哈希,反之会抛出 TypeError 异常


    image.png
    image.png

    6.获取key对应的value

    image.png
    image.png

    7,获取字典所有的key

    image.png

    8,获取字典所有的value

    image.png

    9同时获取字典的key和value

    image.png

    10.使用 = 修改或更新字典

    可以使用等号对字典的key进行直接赋值操作。
    假如key不存在于字典中,这个key和对应值也会被创建到字典中。


    image.png

    字典同样支持引用赋值

    image.png

    11使用update()更新字典

    把一个已经存在的字典中的键值对,添加到另一个字典中。


    image.png
    image.png
    image.png
    image.png

    12.删除和清空字典

    删除指定的键值对


    image.png

    清空


    image.png

    pop()

    从字典中删除指定key的键值对,并返回这个key对应的值


    image.png

    用字典实现swith....case语句

    python中没有switch......case语句,这个问题python之父龟叔表示这个语法过去没有,现在没有,以后也不会有。因为python简洁的语法完全可以用if....elif实现。如果有太多的分支判断,还可以使用字典来代替。


    image.png
    image.png

    setdefault()处理缺失的键

    image.png

    分类统计实列


    image.png

    笨方法:

    image.png

    好方法:


    image.png
    image.png

    相关文章

      网友评论

          本文标题:核心数据结构之字典

          本文链接:https://www.haomeiwen.com/subject/jjntrqtx.html