[python学习心得11]字符串驻留机制

Python 支持字符串驻留机制,对于符合标识符规则的字符串(仅包含下划线(_)、字母和数字)会启用字符串驻留机制驻留机制,创建同一份对象存贮在“字符串常量池”里。不同的变量引用同一个对象地址。

在IDLE里支持上述规则,pycharm里对于不符合标识符规则的字符串也进行驻留。

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

同一运算符(is)判断是不是同一个对象;
比较运算符(==)判断对象内容是不是一致。

>>>a = "abc"
>>>b = "abc"

#测试字符串驻留机制
>>>a == b
True
>>>a is b
True

>>> c = "我爱你"
>>> d = "我爱你"
>>>c == d
True
>>>c is d
False

#字符串只在编译时进行驻留,而非运行时
>>> e = "aa"+"bb"
>>> f = "aabb"
>>> e is f
True

>>> h1 ="aa"
>>> h2 = "bb"
>>> h = h1+h2
>>> h is f
False

你可能感兴趣的:([python学习心得11]字符串驻留机制)