字符串不可变的问题
来源:5-3 值类型与引用类型
易萧
2020-07-28
a = "1234"
a
’1234’a = a + "56"
a
’123456’id(a)
140685085028016a += "78"
id(a)
140685085028016a
’12345678’id(a)
140685085028016a = a+"90"
a
’1234567890’id(a)
140685085028016
偶尔尝试了一次,发现id一模一样,这是怎么回事???
但是后面重新赋值后再加,就不一样了。
这是BUG吗
测试环境:CentOS 8 + Python3.8
写回答
1回答
-
7七月
2020-07-29
字符串python是有优化的,有时候是会复用原来的地址
012020-07-29
相似问题