为什么用Python"hello" is "hello"生成True?
"hello" is "hello"
True
我在这里阅读以下内容:
如果两个字符串文字相等,则将它们放在相同的内存位置。字符串是不可变的实体。不会造成伤害。
那么每个Python字符串在内存中只有一个位置吗?听起来很奇怪。这里发生了什么?
Python(例如Java,C,C ++ 、. NET)使用字符串池/内联。解释器意识到“ hello”与“ hello”相同,因此它优化并使用了内存中的相同位置。
另一个好东西:"hell" + "o" is "hello"==>True
"hell" + "o" is "hello"