美文网首页Python 从零开始
[Python] (Day-09) - 字典

[Python] (Day-09) - 字典

作者: 已重置2020 | 来源:发表于2017-10-10 11:16 被阅读5次
    Don't follow the crowd, let the crowd follow you. 不随波逐流,要引领潮流。
    • 字典是另一种可变容器模型,且可存储任意类型对象
    • 字典的每个键值key,value对用冒号:分割,每个对之间用逗号,分割,整个字典包括在花括号{}
    • 键必须是唯一的,但值则不必
    • 值可以取任何数据类型,但键必须是不可变的,如字符串,数字或元组

    字典格式如下:

    dict = {key1 : value1, key2 : value2 }
    

    字典键的特性

    • 1、不允许同一个键出现两次;创建时如果同一个键被赋值两次,后一个值会被记住;
    • 2、键必须不可变,所以可以用数字,字符串或元组充当,而用列表就不行。

    访问字典里的值

    格式:dict[key]

    dict = {'name': 'Mazy', 'age': 21, 'sex': 'male'}
    
    print (dict['name']) # Mazy
    print (dict['age'])  # 21
    

    修改字典

    向字典添加新内容的方法是增加新的键/值对

    dict = {'name': 'Mazy', 'age': 21, 'sex': 'male'}
    
    dict['age'] = 26     # 更新 age
    dict['job'] = "iOS"  # 添加信息
    
    print (dict['age']) # 26
    print (dict['job']) # iOS
    

    删除字典元素

    能删单一的元素也能清空字典,清空只需一项操作

    显示删除一个字典用del命令

    dict = {'name': 'Mazy', 'age': 21, 'sex': 'male'}
    
    del dict['name'] # 删除键 'name'
    dict.clear()     # 删除字典
    del dict         # 删除字典
    
    

    字典的嵌套

    字典中的 value 可以是字典

    cities = {
        '北京':{
            '朝阳':['国贸','CBD','天阶','我爱我家','链接地产'],
            '海淀':['圆明园','苏州街','中关村','北京大学'],
            '昌平':['沙河','南口','小汤山'],
            '怀柔':['桃花','梅花','大山'],
        },
        '河北':{
            '石家庄':['石家庄A','石家庄B','石家庄C'],
            '张家口':['张家口A','张家口B','张家口C'],
            '承德':['承德A','承德B','承德C','承德D']
        }
    }
    
    print(cities["北京"]["昌平"])    # ['沙河','南口','小汤山']
    print(cities["北京"]["昌平"][1]) # 南口
    for i in cities['北京']:
        print(i)                    # 朝阳  海淀  昌平  怀柔
    
    

    字典内置方法

    序号 函数 描述
    1 radiansdict.clear() 删除字典内所有元素
    2 radiansdict.copy() 返回一个字典的浅复制
    3 radiansdict.fromkeys() 创建一个新字典,以序列seq中元素做字典的键,val为字典所有键对应的初始值
    4 radiansdict.get(key, default=None) 返回指定键的值,如果值不在字典中返回default值
    5 key in dict 如果键在字典dict里返回true,否则返回false
    6 radiansdict.items() 以列表返回可遍历的(键, 值) 元组数组
    7 radiansdict.keys() 以列表返回一个字典所有的键
    8 radiansdict.setdefault(key, default=None) 和get()类似, 但如果键不存在于字典中,将会添加键并将值设为default
    9 radiansdict.update(dict2) 把字典dict2的键/值对更新到dict里
    10 radiansdict.values() 以列表返回字典中的所有值
    11 pop(key[,default]) 删除字典给定键 key 所对应的值,返回值为被删除的值。key值必须给出; 否则,返回default值
    12 popitem() 随机返回并删除字典中的一对键和值(一般删除末尾对)

    相关文章

      网友评论

        本文标题:[Python] (Day-09) - 字典

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