• Python学习笔记之基础篇(五)字典


    #数据类型划分:可变数据类型  不可变数据类型
    #不可变数据类型  : 元组  bool int str       --> 可哈希
    #可变数据类型   list ,dict  set            --->不可哈希
    
    '''
    dict: key  必须是不可变数据类型 ,可哈希
           value  :任意数据类型
         优点:二分查找去查询
                存储大量的关系型数据
                特点:无序性
    '''
    #案例
    dic ={
        'name':['小明','小红'],
        'py9':[{'num',71,'avg_age',18},
               {'num',70,'avg_age',21},
               ],
        True:1,
        (1,2,3):'wudi',
        2:'er',
    }
    dic1 = {'height' : 18 ,
            'width' : 1  ,
            }
    
    #增加
    '''
    dic1['height'] = 16 #如果有键值对 ,则覆盖
    print(dic1)
    
    dic1['high'] = 100   #如果没有 ,则添加
    print(dic1)
    
    dic1.setdefault('age',150)  #有键值对 ,不做任何改变,没有才添加
    print(dic1)
    '''
    
    #删除
    '''
    print(dic1.pop('height'))  #按键去删除,有返回值
    print(dic1.pop('age',"没有值啊"))  #按键去删除,可以设置返回值 。如果没有会报错
    
    print(dic1.popitem()) #随机删除 有返回值 是元组中删除的键值
    
    del dic1['height']  #按键去删除  没有值会报错,返回键值对
    print(dic1)
    del dic1       #删除字典
    
    dic1.clear()   #清空
    '''
    
    #改
    '''
    #根据 key 修改值
    dic1['width'] = 16
    
    #update 没有的键  
    dic = {
        "name":"jin",
        "age":"18",
        "sex":"male",
    }
    dic2 = {
        "name":"alex",
        "weight":"180",
    }
    
    dic2.update(dic)
    print(dic)   #{'name': 'jin', 'age': '18', 'sex': 'male'}
    print(dic2)  #{'name': 'jin', 'weight': '180', 'age': '18', 'sex': 'male'}
    
    '''
    
    #查
    '''
    dic = {
        "name":"jin",
        "age":"18",
        "sex":"male",
    }
    print(dic.keys(),type(dic.keys()))
    print(dic.values())
    print(dic.items())
    
    for i in dic:
        print(i)
    
    for i in dic.keys():
        print(i)
    
    for k,v in dic.items():
        print(k,v)
    
    
    i=dic['age']
    print(i)
    
    print(dic.get('age','没有这个值'))
    print(dic.get('aaa','没有这个值'))
    
    '''
    
    
  • 相关阅读:
    57.大数据线性处理csdn数据(fread,fwrite) 百万数据秒读数据
    56.fread fwrite
    ZOJ 2724 Windows Message Queue (二叉堆,优先队列)
    priority_queue用法(转载)
    Runtime Error(ACCESS_VIOLATION)
    POJ 2309 BST(二叉搜索树)
    POJ 2255 Tree Recovery
    [转载]C++Assert()函数
    POJ 2499 Binary Tree
    POJ 3437 Tree Grafting
  • 原文地址:https://www.cnblogs.com/xibanqiu/p/11973730.html
Copyright © 2020-2023  润新知