zoukankan      html  css  js  c++  java
  • python数据类型:字典dict常用操作

    字典是Python语言中的映射类型,他是以{}括起来,里面的内容是以键值对的形式储存的:

        Key: 不可变(可哈希)的数据类型.并且键是唯一的,不重复的。

        Value:任意数据(int,str,bool,tuple,list,dict,set),包括后面要学的实例对象等。

     在Python3.5版本(包括此版本)之前,字典是无序的。

     在Python3.6版本之后,字典会按照初建字典时的顺序排列(即第一次插入数据的顺序排序)。

     当然,字典也有缺点:他的缺点就是内存消耗巨大。
          优点:查询速度快,映射型数据

    字典的常用操作:

    增: dict['']=值                                         无添加,有更改
      dict.setdefault('','')                             无添加,有不变,且返回原来的值
        有返回值:dict.setdefault('')       
                    如果键存在,返回键对应的值  
                  如果键不存在,则给字典添加这个键,他的值为None,且返回none
    删:   dict.pop['']                    删除字典中的键值对,并返回删除的值(如果键不存在报错key Error)
          如果没有这个键,可以设置返回值,dict.pop['222',dddd]   不会报错,返回dddd
      dict.popitem()                     3.5版本前随机删除一个键值对
                                 3.6版本后默认删除最后一对,返回一个元祖,字符串逗号分割,字典空了再删报错
      del dict['']                      没有返回值,直接对字典操作       当键不存在时报错
      del dict                            删除字典
      dict.clear()                        清空字典
    改:   dict['']=值                      无则添加,有则修改
      update
      dict.update(键='',键='')          添加键值对,以有的键会更改值
      dict1.update(dict2)                  把字典2添加到字典1,有相同的键,2会覆盖1的值
    查:  dict['']                        返回键对应的值(没有键会报错)
       dict.get('','返回值')            键存在的情况下,返回值,不存在返回提示返回值
    dict.keys()                           返回字典键组成的列表包含于括号中----dict.keys(['键1','键2'])       类似列表   可用list强转
    dict.values()                         返回字典的值组成的列表包含于括号中-----dict.value('值1'.'值2')    类似列表
    dict.items()                          返回  dict_items([('1', 11), ('2', 22), ('j', 212)])   可用dict强转为字典

    分别赋值

    a,b=1,2         #分别给a,b赋值
    print(a,b)
    a,b=b,a         #同样再做赋值
    print(a,b)
    a,b,c =(1,2,3)      #同数目的变量赋值同长度元祖元素
    print(a,c)
    a,b=[100,101]       #同数目的变量赋值同长度的列表元素
    print(a,b)
    # 赋值:用相同数目的变量分别赋值类似的结构类型中的元素
    # 我们可以试着给用在字典中:
    # k,v={'1':11}
    # print(k,v)          
    # 这样会报错,因为字典只能赋值到键,所以我们用dic.items()
    for k,v in dic.items():
        print(k,v)          #返回字典的每一对键,值

    dict.fromkeys('键为可迭代对象','值')
      创键一个字典,字典的键为可迭代对象的每一个元素,值都时相同的

  • 相关阅读:
    C#无限极分类树-创建-排序-读取 用Asp.Net Core+EF实现之方法二:加入缓存机制
    如何将CKeditor编辑器的上传和thinkphp结合
    在 VisualStudio 给文件起一个带分号的文件名会怎样
    dotnet ConditionalWeakTable 的底层原理
    GitHub 的 Action 判断仅在主仓库才执行脚本
    ASP.NET Core 将文件夹内容输出为压缩包文件方法
    dotnet Microsoft.Recognizers.Text 超强大的自然语言关键词提取库
    dotnet CBB 为什么决定推送 Tag 才能打包
    WPF 通过 InputManager 模拟调度触摸事件
    如何参与 .NET 的开发和设计
  • 原文地址:https://www.cnblogs.com/OB19227/p/10699194.html
Copyright © 2011-2022 走看看