• 字典相关操作


     

     

    1.dict字典

      字典(dict)是python中唯一的一个映射类型.他是以{}扩起来的键值对组成.在dict中

      key是唯一的.在保存的时候,根据key来计算出一个内存地址,人后将key_value保存在这个地址中

      .这种算法被称为hash算法,所以,切记,在dict记,在dict中存储的key-value中

      的key必须是可hash的,如果你搞不懂什么是可哈希,暂时可以这样记,可以改变的都是

      不可哈希的,那么可哈希就意味着不可变.这个是为了能准确的计算内存地址而规定的.

        {}表示.每次保存两个数据通过key:value,建值对

        {["阳仔":"赵阳",强强:张强强"]} 一堆一堆的存

        value:任意的数据类型

        key: 必须是可哈希的(不可变)=>哈希

    错误示范

    dic = {['sad',"asd"]:2}
    
    print(dic)
    
    #不可变的可以放,可变的不可以放

     

     

    2. dict增删改查和其他相关操作

    1.增加

    1.新增

    dic = {}
    
    dic["313"] = "葫芦娃"
    
    dic["313"] = "精钢葫"
    
    如果key存在执行的是修改操作.如果不存在执行的是新增 
    
    dic.setdfault("王二小") #给的一个参数是key
    
    dic.setdfault("王二小","弹溜溜") #如果key不存在新增
    
    dic.setdfault("王二小","山偏激") #如果存在key,不执行任何操作 

     修改

    dic1 = {"name":"朱高炽","age":58,"朱祁镇":18}
    
    dic2 = {"name":'朱由检',"年轻":18,"朱棣":55,'张无忌':'赵敏'}
    
    #update:把dic2更新到dic1,dic1中如果存在则修改替换,如果不存在则新增
    
    dic1.update(dic2)
    
    print(dic1)
    
    print(dic2)

     

     

     

      

    删除

    dic = {'朱元璋":"明朝开国皇帝","朱棣":"朱元璋四子"}
    ret = dic.pop("朱棣") # 返回value
    del dic['朱允炆']# 缺点没有返回.有点写起来简单
    dic.clear() # 清空
    dic.popitem() # 随机删除.拿到的一定是两个个元素
    print(ret) #拿到是元祖
    print(ret[0],ret[1])

    查询

    lst = [1,2,5,8]
    print(lst[5])  #报错
    dic1 = {,"朱棣":55,"朱祁镇":18}
    
    print(dic1['朱见深')  #keyerror:'朱见深'key不存在
    
    print(dic1.get("朱祁镇")) #dic.get("朱祁镇") == dic1["朱祁镇"]
    get(key,default)
    print(dic1.get("朱见深","查无此人") #返回Noen.不存在key

     

     

    解构

    a,b = (1,6) #按位置赋值,赋值数量一定相同
    
    dic = {'朱元璋":"明朝开国皇帝","朱棣":"朱元璋四子"}
    
    k,v = dic.popitem()#dic.popitem()的结果是一个元祖,元祖可以直接解构成两个值

     

  • 相关阅读:
    逐级汇总示例(循环逐级累计法).sql
    UdtSsn.cs
    2013届大华股份 软件算法类试题 D卷
    TCP与UDP区别
    浙江大华 研发类试题
    百度面试经历
    Contiki入门学习
    09网易校园招聘笔试题
    (转载)利用webkit抓取动态网页和链接
    2012.9.23 搜狗笔试
  • 原文地址:https://www.cnblogs.com/while-number/p/9139621.html
Copyright © 2020-2023  润新知