day6 is id == 集合 深浅copy

01今日内容大纲

  1. is == id 用法
  2. 代码块
  3. 统一代码块等下的缓冲机制
  4. 不同代码块下的缓冲机制(小数据池)
  5. 总结
  6. 集合(了解)
  7. 深浅copy

02昨日回顾以及作业讲解

1.字典:

  • 查询速度快。{'key';'value'},可以存储大量的关联性数据
  • 键必须是不可变的数据类型 int str bool tuple 唯一的
  • 值:任意的数据类型,对象
  • 3.5之前的是无序的 3.6版本按照初始顺序排序 3.6之后是有序的

2.增删改查

  • 增:setdefualt dic['key']
  • 删:pop(可以按照键删除) clear清空 del dic['key']
  • 改: dic['key'] = ''
  • 查:dic.keys() dic.values() dic.items()
    • dic['key'] dic.get('name')不会报错

3.字典的嵌套

03具体内容

  1. id is ==
  2. 代码块
    • 代码块:我们所有的代码都需要依赖代码块执行
    • 一个文件就是一个代码块

3.两个机制:同一个代码块下,有一个机制,不用的代码块下,遵循另一个机制

4.同一个代码块下的缓冲机制

  • 同一个代码块内
  • 机制内容:pass
  • 适用对象:int bool str
  • 具体细则:所有的数字 bool 、几乎所有的字符串
  • 优点:节省性能,提高效率

5.不同代码块的缓存机制:小数据池

  • 不同代码块
  • 机制内容:pass
  • 适用对象:int bool str
  • 具体细则:-5~256 bool 、以及满足规则的字符串
  • 优点:节省性能,提高效率

6.总结;

​ 1.面试题

​ 2.回答的时候一定要分清楚:同一个代码块使用一个缓存机制,

​ 不用的代码块适用另一个缓存机制(小数据池)

​ 3.小数据池:数字范围 -5~256

​ 4.优点:节省内存,提升性能

7.python基础数据类型之:集合 set,容器型的数据类型,他要求它里面的元素是不可变的数据

​ 但是它本身是可变的数据类型。集合是无序的{}

  • 集合的作用:

  • 列表的去重

  • 关系测试:交集,并集,差集,反交集,子集,超集.....

8.深浅copy

04今日总结

  • id is == 三个方法会用 重点

  • 回答:同一个代码块下,有一个机制,不用的代码块下,遵循另一个机制

    ​ 小数据池:数字范围 -5~256

    ​ 优点:节省内存,提升性能

  • set{}:列表去重,关系写实

  • 深浅copy:理解会说,练习题

     # 浅copy 只是赋值本身原有的,对于里面有可变的列表,字典,会copy 
     # 外面的的只是copy原本的,里面的列表和字典可变的会copy
    # l1 = [1,2,3,[4,5]]
    # l2 = l1.copy()
    # # # l1.append(66)
    # # l1.remove(1)
    # l1[-1].append(666)
    # print(l1,id(l1))
    # print(l2,id(l2))
    # # print(id(l1[3]))
    # # print(id(l2[3]))
    
    # # 深copy                                  # 只copy 最原本的,对里面的列表,以及外部的列表,字典的变动也不会copy
    # import copy
    # l1 = [1,2,3,[4,5]]
    # l2 = copy.deepcopy(l1)
    # # l1.append(66)
    # # l1.remove(1)
    # l1[-1].append(66)
    # print(l1,id(l1))
    # print(l2,id(l2))
    

posted @ 2020-09-30 11:51  太白之魔童降世  阅读(116)  评论(0编辑  收藏  举报