zoukankan      html  css  js  c++  java
  • 字典是个什么东西?

    1.字典是什么?

    dic

    {}"键":"值" 别的语言叫"键值对数据"

    键:必须是可哈希的类型(不可变动),而且是唯一的

    值:任意

    字典是无序的:python3.6版本以上会默认定义时的顺序,python3.5以下显示的是随机顺序

    字典是可变的:

    1.当输入一个新的键值对之后,字典会先检查要添加的键是否存在

    如果键在字典中存在就不添加,要是不存在就添加

    删:

    通过"键"进行删除,pop具有返回值,返回的是被删除的值

    字典没有remove

    del dic["键"] 删除指定的键值对

    dic.clear() 清空

    print(dic) 删除整个 字典中的键值对

    改:

    dic["键"]="这是值 " 键在字典中存在就是修改,不存在就是增加

    dic.update(键值对,键值对) update里面的字典级别高,会覆盖掉原来的内容

    dic.setdefault("5":5) 键不存在就添加,键存在就不添加

    查:

    字典的查询只能通过键寻找值,不能通过值寻找键.

    dic.setdefault("键")

    如果键在字典中存在就返回对键对应的值,如果不存在就报错

    print(dic.get("c","b"))获取值的时候可以指定返回的内容(计算和编辑,并赋值),键不存在的时候不会报错

    dic = {"1":1,"2":2,"3":3,"4":4}

    删除"2",3种方式

    添加"5":5,2种方式

    修改:"1":10086

    查看"3"的值

    dic.del("2")

    dic.clear

    dic.pop("2")

    dic["5"] = 5

    dic.update("5":5)

    dic["1"] = 10086

    dic["3"] 没有就会报错

    print(dic.keys)

    print(dic.values)

    for i in dic.key() 高仿列表 :无序无索引

    for k,v in dic.items():

    ​ print(k,v)

    for i in dic:

    ​ print(i,dic(i))

    for i, k in enumerate(dic,1): #enumerate 第二个参数是起始数字,默认是0

    ​ print(i,k)

    字典的嵌套:

    字典是存储大量的数据的数据类型,容量比列表还要大

    字典在在查找值的时候能够更方便快速

    字典能够将数据进行关联

    字典比较消耗内存

    有明确的对应关系时,推荐使用字典,字典一定要用明白

    list (1,3,4)

    tuple

    目前所学,字典是不能转换的

    查找字典的嵌套时,按照键去一层一层查找

    小数据池 面试和解决做题时的困惑

    深度拷贝 面试必问

    周五考试考到到函数之前

    1.字典:
    dict -- {} {"key":'value',"a":1}
    dic = {}

    字典的无序的,字典是可变的
    
    字典的键 -- 可哈希(不可变),唯一
    
    字典的值 --  任意
    
     增:
    
        dic["键"] = "值"
    
        dic.setdefault("键","值")  # 键不存在就添加,存在就不填加.
    
    删:
         pop("键")
    
         del dic["键"]
        dic.clear()  清空
    
     改:
    
         dic["键"] = "值"
    
        dic.update({"a":1,"b":1})
    
         # update(里边的级别高),会把之前内容中相同的key对应的值覆盖
    
         # 没有的话会填加
    
     查:
    
         get("键","自己指定返回的内容")  # 不存在返回的是None
    
         dic["键"]   #不存在就报错
    
         dic.setdefault("键")            # 查询
    
     其他方法:
    
         for i in dic:
    
            print(i)   循环的是字典的键
    
        for i in dic.keys():
    
            print(i)
    
        dic.keys()   --  返回的是一个高仿列表 --  没有索引
    
        dic.values() --  返回的是一个高仿列表 -- 没有索引
    
        dic.items()  --  返回的是一个高仿列表,列表里存放的是元组类型,
         元组第一个元素是键,第二个元素是值
         
    li = [1,2,3,4,54]
    for i,k in enumerate(li):  # enumerate 第二个参数默认不写就是0    -- 枚举
    #     print(i,k)
    
        解构:
    
       a,b = b,a    --- 交换的是指向
    
         a,b = 1,2
    
         a,b = (45,6)
    
         a,b = [1,4]
    
         a,b = {"s":1,"a":1}  # 字典拆包后的结果是键赋值给了a和b的变量
    
         enumerate() # 枚举   给你要迭代对象,加一个序号  默认是从0开始,可以自己指定
    
        字典的嵌套:
           查找的字典的嵌套时,按照键去一层一层的查找
    
  • 相关阅读:
    RESTful-rest_framework版本控制、分页器-第六篇
    RESTful-rest_framework认证组件、权限组件、频率组件-第五篇
    RESTful-rest_framework视图层-第三篇
    RESTful-rest_framework应用第二篇(get、post的序列化与反序列化)
    RESTful-rest_framework应用第一篇
    Flask
    驱动程序分层分离概念_总线驱动设备模型_P
    (转)linux设备驱动之USB数据传输分析 二
    (转)linux设备驱动之USB数据传输分析 一
    USB设备驱动程序(二)
  • 原文地址:https://www.cnblogs.com/ayongxin93/p/11041183.html
Copyright © 2011-2022 走看看