zoukankan      html  css  js  c++  java
  • 小数据池和深浅拷贝

    小数据池

    • 什么是小数据池?

      • 小数据池就是Python中一种调高效率的方式,固定数据类型使用同一个内存地址
      • 支持 : str,int,bool
    • 小数据池是干嘛的?

      • id()查看空间的内存地址 获取开辟空间的一种地址
      • 小数据池数字支持范围 : -5 ~ 256
      • is : 判断两个内存地址是否相同
      • == : 判断等号两边的值是否想铜
    • 字符串

      • 字符在做乘法的时候总长度不能超过20,进行驻留
      • 自己定义的字符串 ,长度不限制,但字符串必须是字母数字下划线的组成,进行驻留
      • 特殊字符(中文除外)定义一个的时候,进行驻留
      • 字符串*1,其实就是赋值
    • 代码块

      • 一个文件,一个模块,一个函数,一个类,终端中的每一行都是一个代码块,在Python中以字典的方式储存
      • 数字,全部驻留
      • 字符串
        • 乘法时总长度不超过20
        • 自定义的都驻留
        • 乘数为1的时候就是赋值
        • Python3.7乘法的时候总长度不能超过4096
    • 强制驻留

    • from sys import intern

      ​ a = intern(@@@@*20)

      ​ b = intern(@@@@*20)

      print(a is b) #自己进行驻留

    集合

    • 什么是集合?

      • 集合就是一个没有值的字典,遵循: 唯一,无序,元素要求可哈希(不可变)

      • 集合是可变的,无序的

      • 作用主要就是去重

      • 增加

        • s.update("3456") #迭代添加
        • s.add()
      • 删除

        • s.pop() : 随机删除 #据自己观察发现有点规律,但是不好说
        • s.remove() : 通过元素删除
        • s.clear() : 清空
        • del s : 删除整个集合
      • 修改

        • 删了再加不就是改了
      • 其他操作

        # print(s1 - s2)  #差集
        # print(s1 | s2)  #并集   (合集)
        # print(s1 & s2)  #交集
        # print(s1 ^ s2)  #对称差集  -- 反交集
        # print(s1 > s2)  # 超集   -- 父集
        # print(s1 < s2)  # 子集
        # 冻结集合(可变 转换成 不可变)  -- 更不常用
        # f_s = frozenset({1,2,3,4,5})
        # # dic = {f_s:"1"}
        # # print(dic)
        

    深浅拷贝

    • 深浅拷贝的规律:

      赋值: 两个变量使用的是同一个空间
      浅拷贝:修改不可变数据类型,不变动,修改可变数据类型,变动
      深拷贝:修改就不变动

  • 相关阅读:
    CVPR-2021-Papers
    caffe中使用多个GPU的方法
    大道至简!深度解读CVPR2021论文RepVGG
    195上的rknn
    RKNN1.6下载路径
    基于深度学习的2D和3D仿射变换配准
    涵盖18+ SOTA GAN实现,开源工程StudioGAN火了
    基于opencv实战眼睛控制鼠标
    S7-200SMART PLC与变频器MODBUS RTU通讯与SMART LINE系列屏控制(案例三)
    Java异常处理学习
  • 原文地址:https://www.cnblogs.com/W-Y-C/p/11005537.html
Copyright © 2011-2022 走看看