• 字典(dict),字典的嵌套,集合(set)


    1.字典

      1.1 字典是python中唯一的一个具有映射的类型.

      dict = {"键":'值'}      键(key)是必须是不可变的(可哈希的).

                                          值(value)没有要求.

      1.2 不可变的数据类型:int,str,tuble,bool

            不可哈希(可变)的数据类型: list, dict, set(集合).

      1.3 字典的增删改查

        1.3.1 増:

            1) dic["键"] = "值"

            2) dic.setdefault("键","值")  # 1.先去字典中通过'键'查看是否有值.

                              2.如果有值,就不进行添加.

                                 3.如果没有就进行添加 返回的就是添加的值.

        1.3.2 删

            

    1) del dic          #删除整个字典.
    
     del dic['']    #通过指定键删除.
    
    2) dic.pop('')      #通过指定键删除,pop具有返回值,返回的是被删除的东西.
    
    3) dic.clear()    #清空
    
    4) dic.popitem() #随机删除  python3.6中删除最后一个,python3.5随机删除.

        1.3.3 改

    1) dic.update(dic1)  #update 更新  dic中与dic1相同的键的值,会被替换掉.
    
    2) dic[""] = ""          #字典中没有相同键时是添加,有相同键位时是更换.  

        1.3.4 查

    1)print(dic[""])  #通过键位查找 如果键不存在就报错
    
    2)print(dic.get("")) #通过键位查找 如果键不存在不报错,返回None
    
    3)print(dic.setdefault("")) #不存在就返回None

        1.3.5 其他操作

           ###循环打印dic中的键

    for  i in dic:                
        print(i)

     

    for i in dic.keys():
        print(i)

           ###循环打印dic中的值

    for i in dic:
        print(dic.get(i))

     

    for i  in dic.values():
        print(i)

           ###循环打印键值

    for i in dic.items():
        print(i)
     for i in dic:
         print(i,dic[i])

       keys() # 获取所有的键 高仿列表
       values() # 获取所有的值 高仿列表
       item() # 获取键值 以元祖的形式显示

      dic3 = dict.fromkeys([1,2,3,4,5,6,7,8,9,0],[1,2,3])
      第一个参数是键 要是可迭代的对象
      第二个参数是值, 值是无所谓 是因为创建的新字典的值用的都是一个 值是一个可变数据类型

    2. 字典的嵌套

    dic = {'汪峰':{'光头强':'电锯',
                  '葛慧倩':'熊大',
                  '国际章':'熊二'},
            '陈冠希':{'张柏芝':'喜剧之王',
                   '阿娇':'千机变'},
            '韦小宝':{'建宁':'公主',
                   '龙儿':'教主夫人',
                   '双儿':{'大双':'榴莲','小双':'椰子'},
                   '阿珂':'刺客'}}
    dic1 = dic['陈冠希']['阿娇']
    print(dic1)
    print(dic['韦小宝']['双儿'])
    print(dic['韦小宝']['双儿']['小双'])

    3.集合(set)

      集合   存储数据    天然去重  无序 不能是用下标

     
  • 相关阅读:
    mysql分组查询
    (三)分布式数据库tidb-隔离级别详解
    (二)分布式数据库tidb-事务
    (一)ArrayList集合源码解析
    (一)分布式数据库tidb-简介
    (二)LinkedList集合解析及手写集合
    电商数仓中需要统计的指标
    实时推荐模型的算法设计
    数据库需要掌握到什么程度可以应付工作?
    Mysql的万能优化方法
  • 原文地址:https://www.cnblogs.com/shicongcong0910/p/10213795.html
Copyright © 2020-2023  润新知