• 5:字典及其操作


    数据类型:

    1、可变数据类型:list、dictionary---->不可哈希

    2、不可变数据类型:元祖、字符串str、bool、int

    字典:数据类型中唯一映射数据类型dict,具有键和值的对应关系

    其中:

    key:必须是不可变类型,也就是可哈希

    value:任意数据类型

    字典使用二分法查找,是储存大量数据关系的数据类型

    特点:字典是无序的

    字典的方法:

    1、增  

    1>直接赋值:dic1[height]=185,没有键值时,直接赋值;有键值时,被覆盖

    2>通过setdefault进行赋值   dic1.setdefault('weight',150)    没有value时默认None ,如果有键值时不做操作,没有才添加

    2、删

    1>pop          dic1.pop('age')有返回值,按  键  去删除

                         dic1.pop('meiyou','None')    没有此键时返回None,有的话返回被删除的对象

    2> popitem     dic1.popitem()       随机删除

                         print(dic1.popitem())   随机删除,有返回值,返回的是元祖显示的是被删除的键值

    3>del     删除   del dic1['name']     删除键所对应的值

           del  dic1   删除整个字典

    4> clear   dic1.clear  清空字典

    3、改

     1   > update   更新    

    dic1={'name':'王宇星','age':'24','sex':'male'}
    dic2={'1':1,'2':2}
    dic2.update(dic1)
    print(dic1)
    print(dic2)

    2>直接赋值

    4、查  

    dic1={'name':'王宇星','age':'24','sex':'male'}
    dic2={'1':1,'2':2}
    dic2.update(dic1)
    print(dic1.keys(),type(dic1.keys()))
    print(dic1.values(),type(dic1.values()))

     2>  循环查

    下面这种循环:直接对字典进行循环,执行结果为key

    for i in dic1:
         print(i)

    如果对dic1.keys()进行for循环,执行结果为key

    如果对dic1.values()进行for循环,执行结果为value

     for i in dic1.keys():
         print(i)
    for i in dic1.values():
        print(i)

    键值成对对应打出:使用循环对两个变量进行

          

    for i ,j in dic1.items():
        print(i,j)

    3>get 查询

    v1=dic1.get('name','没有这个值')
    print(v1)

    执行结果为:王宇星

    如果不存在相关的键,找不到的话会返回None或者预留的值(如上:执行结果为‘没有这个值’)

  • 相关阅读:
    C++三大特性之多态
    内向者沟通圣经:4P法(Preparation,Presence,Push,Practice)
    RTP/RTCP、TCP、UDP、RTMP、RTSP
    网络七层协议
    预防U盘被病毒侵害的方法
    Win8安装程序出现2502、2503错误解决方法
    小L的区间求和
    【剑指offer-12】矩阵中的路径
    【剑指offer】数值的整数次方
    【剑指offer】二进制中1的个数
  • 原文地址:https://www.cnblogs.com/wangyuxing/p/8073575.html
Copyright © 2020-2023  润新知