• python---字典


    1、字典的声明

    dic = {'dog':'wang','cat':'miao','count':3}

    2、字典删除

      删除某个键值对

    dic = {'dog':'wang','cat':'miao','count':3}
    list1 = [1,2,3]
    dic.pop('count')  #与列表不同,要跟pop的key值
    print(dic)
    list1.pop() #列表的pop是删除列表末尾的值
    print(list1)

      删除全部

    dic = {'dog':'wang','cat':'miao','count':3}
    dic.clear()
    print(dic)
    控制台输出:{}

    3、fromkeys,把列表的元素作为字典的key值

    lis = ['dog','cat','snake']
    dic = {}
    dic = dic.fromkeys(lis,'animal')
    print(dic)
    控制台输出:{'cat': 'animal', 'dog': 'animal', 'snake': 'animal'}

    4、zip:将两个列表组为字典

    lis = ['dog','cat','snake']
    lis2 = [1,2,3]
    m = dict(zip(lis,lis2))
    print(m)
    控制台输出结果:{'dog': 1, 'cat': 2, 'snake': 3}

    5、get,安全的取字典的值,取不到不会抛异常,同时可以设置默认值

    dic = {'dog':'wang','cat':'miao','count':3}
    print(dic['haha'])
    控制台输出结果:KeyError: 'haha'  #取不到值时会报错
    
    dic = {'dog':'wang','cat':'miao','count':3}
    print(dic.get('hahaha'))     #安全的取值,取不到时,没设置默认值返回None
    print(dic.get('hahaha',1))   #设置了默认值时,取不到返回默认值
    print(dic.get('dog',2))      #设置了默认值,取到值返回取到的值
    控制台输出结果:None
                 1
                 wang

    6、in:python中判断某个值,判断的是key值,不包括value值

    dic = {'dog':'wang','cat':'miao','count':3}
    print('dog' in dic) 
    print('wang' in dic)
    控制台输出:True
              False

    7、keys、valuesitems

    dic = {'dog':'wang','cat':'miao','count':3}
    keys = dic.keys()
    values = dic.values()
    items = dic.items()
    print("keys:{0},  values:{1},   items:{2}".format(keys,values,items) )
    
    控制台输出:keys:dict_keys(['cat', 'count', 'dog']),  values:dict_values(['miao', 3, 'wang']),   items:dict_items([('cat', 'miao'), ('count', 3), ('dog', 'wang')])
    dic = {'dog':'wang','cat':'miao','count':3}
    for item in dic.items():  #也可用dic.keys()、dic.values()分别取到key和value的值
        key,value = item
        print('key:{0} ,value:{1}'.format(key,value))
    
    控制台输出:
          key:dog ,value:wang
          key:cat ,value:miao
          key:count ,value:3

    8、字典的新增 和 修改

    dic = {'dog':'wang','cat':'miao','count':3}
    dic.setdefault('dog',666)   # 存在该键值,直接对值进行了修改
    dic.setdefault('name','lisa')  #不存在该键值,则添加
    print(dic)
    
    控制台输出:{'dog': 'wang', 'cat': 'miao', 'count': 3, 'name': 'lisa'}
    dic = {'dog':'wang','cat':'miao','count':3}
    dic['dog'] = 'hahaha'   #存在该键值,直接对值进行了修改
    dic['name'] = 'lisa'  #不存在该键值,则添加
    print(dic)
    
    控制台输出:{'count': 3, 'name': 'lisa', 'dog': 'hahaha', 'cat': 'miao'}

    9、

    10、

    11、

  • 相关阅读:
    Fragment使用具体解释
    2014百度之星第一题Energy Conversion
    HDU 2602 Bone Collector 0/1背包
    Angular 2 + 折腾记 :(7) 初步了解表单:模板驱动及数据驱动及脱坑要点
    《开源框架那点事儿25》:对框架模板引擎实现方式的改造实录
    ROS机器人程序设计(原书第2版)补充资料 (柒) 第七章 3D建模与仿真 urdf Gazebo V-Rep Webots Morse
    sql改写or 改成union不等价数据变多
    在GDAL中添加GDALRasterizeGeometriesBuf函数
    多时相地图瓦片简单设想
    记录一次使用VS2015编译错误的原因查找(boost+gdal)
  • 原文地址:https://www.cnblogs.com/hzgq/p/11759569.html
Copyright © 2020-2023  润新知