小数据池
小数据池概念&理解
is 两者之间的id是否相同 == 两边的数值是否相等 id 获取该对象的内存地址 代码块:一个模块,一个函数,一个类,一个文件等都是一个代码块。 而作为交互方式输入的每个命令都是一个代码块。 如果在同一代码块下,则采用同一代码块下的换缓存机制。 如果是不同代码块,则采用小数据池的驻留机制。 # pycharm 通过运行文件的方式执行下列代码: 这是在同一个文件下也就是同一代码块下,采用同一代码块下的缓存机制。 i1 = 1000 i2 = 1000 print(i1 is i2) # 结果为True 因为代码块下的缓存机制适用于所有数字 通过交互方式中执行下面代码: # 这是不同代码块下,则采用小数据池的驻留机制。 >>> i1 = 1000 >>> i2 = 1000 >>> print(i1 is i2) False # 不同代码块下的小数据池驻留机制 数字的范围只是-5~256. #相同代码块下: #所有整数,大部分字符串,bool,存储地址相同 #不同代码块下(小数据池): #-5-256,字符串长度小于等于20,bool,存储地址相同