当我在 Python 中声明一个变量时,它引用了一个对象。在这种情况下,我的对象是字符串“test”。当我将它与“ing123”连接时,变量 a 现在指向字符串对象“testing123”。但是,“testing123”的引用计数并没有增加。为什么会这样?我认为 python 会简单地重新引用以前存在的 'testing123' 字符串对象。在这种情况下,它似乎正在创建另一个 getrefcount 无法识别的对象。我想我的问题是....为什么会发生这种情况?我期待第二次调用 getrefcount 返回 5 而不是 4。
from sys import getrefcount
b = 'testing123'
print getrefcount('testing123')
a = 'test'
a += 'ing123'
print getrefcount('testing123')
print a
印刷...
4
4
testing123