zoukankan      html  css  js  c++  java
  • 字典(dict),增删改查,嵌套

    一丶字典

      dict 用{}来表示  键值对数据  {key:value}  唯一性

      键  都必须是可哈希的  不可变的数据类型就可以当做字典中的键

      值  没有任何限制

    二丶字典的增删改查

      1.增

        dic[key] = value

        dic.setdefault(key,value)

        如果键在字典中存在,则不进行任何操作,否则就添加,可以通过key查询,没有这个key则返回None

    1 #
    2 dic = {"name":"周杰伦","age":45,"sex":"boy","money":100000}
    3 dic["sex"] = ""  #增加,如果key重复了,会替换掉原来的value
    4 print(dic)
    5 dic.setdefault("hobby","listen music")
    6 print(dic)

      2.删

        pop(key) 有返回值,返回的是被删除的value

        del dic[key]

        popitem  随机删除

        clear()     清空字典

     1 #
     2 dic = {"name":"周杰伦","age":45,"sex":"boy","money":100000}
     3 ret = dic.pop("money")    #有返回值,返回的是被删除的value
     4 print(dic)              #{'name': '周杰伦', 'age': 45, 'sex': 'boy'}
     5 print(ret)      #被删除的值
     6 del dic["sex"]    #{'name': '周杰伦', 'age': 45, 'money': 100000}
     7 print(dic)
     8 dic.popitem()       #随机删除
     9 print(dic)          #{'name': '周杰伦', 'age': 45, 'sex': 'boy'}
    10 dic.clear()         #全部清空 {}
    11 print(dic)

       3.改

        dic[key] = value

        dic.update(字典)

    1 #
    2 dic = {"name":"周杰伦","age":45,"sex":"boy","money":100000}
    3 dic["age"] = "40"   #强制修改值
    4 print(dic)      #{'name': '周杰伦', 'age': '40', 'sex': 'boy', 'money': 100000}
    5 dic1 = {"name":"李晨","bug":"唯一一个","age":38}
    6 dic2 = {"name":"范冰冰","邓超":"玛丽","age":26}
    7 dic2.update(dic1)       #把dic1中的内容更新到dic2中,如果存在了key,则替换,如果不存在,则添加进去
    8 print(dic1)
    9 print(dic2)

      4.查

        get(key)

        dic[key]

        for  循环

        setdefault(key)

     1#查
    2 dic = {"name":"周杰伦","age":45,"sex":"boy","money":100000} 3 print(dic.get("sex")) #boy 4 print(dic["age"]) #45 5 for a in dic: #for 循环默认是获取字典中的键(key) 6 print(a) 7 print(dic[a]) #获取的是字典中的值(value) 8 ret = dic.setdefault("name","谢文东") #首先判断原来的字典中有没有这个key,如果没有,执行新增 9 print(dic) #用这个key去字典中查询,返回查找到的结果 10 print(ret)

    三丶字典的其它操作

      keys  获取到所有的键存在一个高仿的列表中

      values  获取到所有的值存在一个高仿的列表中

      items  获取到所有的键值对,以元组的形式存在一个高仿的列表中

    1 dic = {"name":"周杰伦","age":45,"sex":"boy","money":100000}
    2 print(dic.keys())       #获取到所有的键存在一个高仿的列表中
    3 ##dict_keys(['name', 'age', 'sex', 'money'])
    4 print(dic.values())       #获取到所有的值存在一个高仿的列表中
    5 ##dict_values(['周杰伦', 45, 'boy', 100000])
    6 print(dic.items())         #获取到所有的键值对,以元组的形式存在一个高仿的列表中
    7 ##dict_items([('name', '周杰伦'), ('age', 45), ('sex', 'boy'), ('money', 100000)])

    四丶字典的嵌套

     1 # 字典的嵌套
     2 dic1 = {
     3     "name":"汪峰",
     4     "age":48,
     5     "sex":"",
     6     "wife":{
     7         "name":"章子怡",
     8         "age":36,
     9         "sex":"",
    10     },
    11     "baby":[
    12         {"name":"熊大","age":18},
    13         {"name":"熊二","age":16}
    14     ]
    15 }
    16 print(dic1)
    17 dic1["baby"][1]["age"] = 14
    18 print(dic1)

      

  • 相关阅读:
    Fitness
    【数据分析师 Level 1 】10.数据采集方法
    【数据分析师 Level 1 】9.MySQL简介
    【数据分析师 Level 1 】8.数据库简介
    【数据分析师 Level 1 】7.机器学习的基本概念
    【数据分析师 Level 1 】6.一元线性回归
    【数据分析师 Level 1 】5.方差分析
    【数据分析师 Level 1 】4.假设检验
    【数据分析师 Level 1 】3.抽样分布及参数估计
    【数据分析师 Level 1】2.描述性统计分析
  • 原文地址:https://www.cnblogs.com/qicun/p/9402047.html
Copyright © 2011-2022 走看看