python 怎么做到字符串不可变的?

新手上路,请多包涵

如题, python 内部对不可变类型不可变的原理?? 大佬们, 求指教

阅读 2.3k
3 个回答

不可变类型(immutable):
改变了变量的值 == 新建了一个对象,而对于相同的值的对象,在内存中则只有一个对象(一个地址), python的id() 方法让你明白

内存地址不变,都是使用引用

s1 = str.__new__(str, 's1')
s2 = str.__new__(str, 's1')

print(s1 is s2)

just return cached reference in new method, for other methods, return new object

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题