Python 代码块、缓存机制

Python 代码块、缓存机制

  1. 相同的字符串在Python中地址相同

    s1 = 'panda'
    
    s2 = 'panda'
    
    print(s1 == s2) #True
    print(id(s1) == id (s2)) #True
    

2.代码块:

​ 所有的代码都需要依赖代码块执行。

​ 一个模块,一个函数,一个类,一个文件等都是一个代码块

​ 交互式命令中, 一行就是一个代码块

3.缓存机制:

同一代码块下的缓存机制

​ 适用对象:int(float),bool,str

​ 具体细则:所有的数字,bool(1,0),几乎所有的字符串(字符串×数字时会有不同的情况)

​ 同一代码块内:初始化命令时 先检查内存中 的 字典有无 已创建的相同的数据,如果有相同数据, 则会共用同一内存地址,

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

不同代码块下的缓存机制 (小数据池)

​ 适用对象:int(float),bool,str

​ 具体细则:-5~256 范围内的数字,以及满足规则的字符串

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

总结:

  1. 面试题
  2. 同一个 代码块下一个缓存机制,不同的代码块下另一个缓存机制(小数据池)
  3. 小数据池 数字范围 -5~256
  4. 共同优点:节省内存,提升性能。
原文地址:https://www.cnblogs.com/pandaa/p/12029027.html