python字符串驻留机制的使用范围知识点详解

编辑: admin 分类: python 发布时间: 2021-12-04 来源:互联网

1、字符串的长度为0和1时。

2、符合标识符的字符串。

3、字符串只在编译时进行驻留,而非运行时。

4、[-5,256]之间的整数数字。

实例

>>> str1='jiumo'
>>> str2='jiumo'
>>> str1 is str2
True
>>> id(str1)
1979078421896
>>> id(str2)
1979078421896

知识点扩充:

驻留时机

所有长度为 0 和长度为 1 的字符串都被驻留

字符串只在编译时进行驻留,而非运行时

a = 'hi' # a变量被驻留
b = ''.join(['h', 'i']) # 变量不会被驻留
print(a is b) # False

原理

系统维护interned字典,记录已被驻留的字符串对象

当字符串对象a需要驻留时,先在interned检测是否存在,若存在则指向存在的字符串对象,a的引用计数减1
若不存在,则记录a到interned中

到此这篇关于python字符串驻留机制的使用范围知识点详解的文章就介绍到这了,更多相关python字符串驻留机制的使用范围内容请搜索hwidc以前的文章或继续浏览下面的相关文章希望大家以后多多支持hwidc!

【文章由美国大带宽服务器http://www.558idc.com/mg.html 提供,感恩】