Python变量

引用机制

在 Python 中,变量本身不存储数据,它更像一个 "标签" 或 "指针",指向内存中真正存储数据的对象。

如何实现

Python 中的 "变量名"(如a、b)本身不直接关联数据,而是作为符号表(symbol table)中的一个 "键",其对应的值是一个内存地址指针(指向真正的对象)。

引用计数的增减规则

引用传递:指针的复制

当我们进行赋值、传参等操作时,"引用传递" 的本质是指针的复制,而非数据的复制。

可变对象与不可变对象

在 Python 中,可变对象(Mutable Objects)和不可变对象(Immutable Objects)的核心区别在于:对象创建后,其内部数据是否可以被 "原地修改"。

小整数缓存机制

Python(主要是 CPython)会预先创建并缓存一定范围的整数对象(范围 [-5, 256]),避免频繁创建和销毁的开销。

字符串 intern 机制

Python 的intern机制(字符串驻留)本质是一种字符串去重优化,通过将相同内容的字符串映射到内存中唯一的对象,实现内存复用和比较加速。

深浅拷贝