zoukankan      html  css  js  c++  java
  • python字典

    主要内容

    1字典的简单介绍

    2字典增删改查和其他操作

    3字典的嵌套

    一字典的介绍

    字典是python中唯一的一个映射类型.在dict中key是唯一的. 在保存的时候, 根据key来计

    算出一个内存地址. 然后将key-value保存在这个地址中. 这种算法被称为hash算法, 所以, 切记, 在dict中存储的key-value中的
    key'必须是可hash的, 如果你搞不懂什么是可哈希, 暂时可以这样记, 可以改变的都是不可哈希的,
    那么可哈希就意味着不可变. 这个是为了能准确的计算内存地址而规定的.
    已知的可哈希(不可变)的数据类型: int, str, tuple, bool
    不可哈希(可变)的数据类型: list, dict, set
    语法 :
    {key1: value1, key2: value2....}

    注意可以是不可变的(可哈希)的.valiue没有要求.可以保存任意类型的数据

    dic = {123:456,True:999,'id':1,'name':'syalr','age':18,'stu'['帅哥','美女']}
    

      key list 和dict 还有set是不可变类型不能作为key

    二字典的增删改查

    1增加 原始和setdefault

    前者可以将key的值改变后者不行

    dic = {}

    dic = {}
    dic['jay']='周杰伦'
    dic.setdefault('王小二')
    

     2删除

    pop del popitem

    解构

    a,b = (1,5) 

    dic = {'猪刚鬣':'元帅','朱元璋':'皇帝',}
    dic.pop('朱元璋')#有返回值
    dic.clear('朱元璋')#清空列表
    dic.popitem('朱元璋')#随机删
    del dic['朱元璋'] 删除
    

      改

    update             

    原来的在增介绍过

    dic = {'age':'58','朱元璋':'和尚','诸葛亮':'军师'}
    dic2 = {'age':'59','吴用':'军师'}
    dic.update(dic2)#把dic2更新到dic中
    

      查

    和列表一样的查

    get

    dic = {'age':'58','朱元璋':'和尚','诸葛亮':'军师'}
    print(dic[age])
    dic.get('诸葛亮')
    

      

    其他

    keys

    dic = {'age':'58','朱元璋':'和尚','诸葛亮':'军师'}
    print(dic.keys)
    for el in dic.keys():
        print(el)
        print(dic.get(el))
    

     values

    dic = {'age':'58','朱元璋':'和尚','诸葛亮':'军师'}
    
    for el in dic.valies():
        print(el)
    

      items

    dic = {'age':'58','朱元璋':'和尚','诸葛亮':'军师'}
    
    for k,v in dic.items():
        print(k)
        print(v)
    

      嵌套

    # wangfeng = {
    #     'name':'汪峰',
    #     'age':46,
    #     'wife':{
    #         'name':'章子怡',
    #         'age':43
    #     },
    #     'children':[
    #         {'name':'小叮当','age':10},
    #         {'name':'大叮当','age':16}
    #     ]
    # }
    #  汪峰的第二个儿子的年龄
    # print(wangfeng.get("children")[1].get("age"))
    # print(wangfeng.get("wife").get("name"))
    # print(wangfeng.get("name"))
    

      

  • 相关阅读:
    internet连接共享被启用时 出现了一个错误 (null)
    mybatis01-1测试
    配置没有问题,虚拟机Ubuntu系统ifconfig没有网卡信息
    Ubuntu启动Apache
    VM虚拟机Linux系统eth0下面没有inet和inet6
    jQuery通过id和name获取值的区别
    1.4.3 ID遍历爬虫(每天一更)
    mysql中的SQL语句执行的顺序
    Mecanim动画系统丶
    html中常见的行内元素和块级元素,还有常见的行内块元素
  • 原文地址:https://www.cnblogs.com/lnrick/p/9140821.html
Copyright © 2011-2022 走看看