8.小数据池,代码块

15.小数据池

  • 小数据池就是python 中一种提高效率的方式,固定数据类型使用同一个内存地址

  • 小数据池----支持:str,int,bool

  • 前提:不同代码块的缓存机制

  • 缓存机制的优点:提升性能,节省内存。

  • 小数据池怎么用?

    a=1
    b=1
    #id 查看空间的内存地址  获取开辟空间的一种地址
    print(id(a))
    print(id(b))
    

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

    字符串:

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

16.代码块

代码块:一个文件,一个模块,一个函数,一个类,终端中每一行就是一个代码块。

前提:在同一个代码块内。

缓存机制的优点:提升性能,节省内存。

is 判断两个内存地址是否相同*** 如果is判断相同== 一定相同
==判断等号两边的值是否相同*** 如果==判断相同 is 不一定相同

代码块的规则:

数字:全部驻留

字符串:

  1. 字符串做乘法的时候总长度不能超过20
  2. 自己定义的都驻留
  3. 乘数为1的时候,就是赋值
  4. python3.7乘法的时候总长度不能超过4096

总结:

小数据池---支持:str,int ,bool

小数据池数字:-5-256

小数据池字符串:乘法是长度不能超过20

自己设置驻留:

需要使用python的内置模块

from sys import intern
a = intern("@@@@@@"*20)
b = intern("@@@@@@"*20)
print(a is b)        # 自己进行驻留
原文地址:https://www.cnblogs.com/pythonblogs/p/11004912.html