说到数据存储,我们先来看一下整数池:
- 池子可以理解为 里面已经有存储的容器,你直接拿来用就行了, 如果池子没有东西 ,你就添加, 下次要用直接用,不要再次创建了。
- 这个池子 只是存储这一类的,其他不要你进来,达到了数据隔离。
1.小整数对象池
看一个代码:
In [1]: a=10
In [2]: b=10
In [3]: a is b
Out[3]: True
由上面可知,创建的对象都是相同的地址;
由于整数应该会频繁用到,python为了优化速度,使用了小整数池,避免为整数频繁申请和销毁内存空间;
小整数定义范围:[-5,257],
这些整数是提前建立好的,不会被垃圾回收,Python中,所有位于这个范围内的整数使用的相同对象;
同理:单个字母也是一样的,
但是定义字符串,引用计数为0
2.大整数池
大整数池 和小整数池的区别是
- 大整数池是没有提前创建好,是个空池子, 需要你自己创建