下面小编就为大家带来一篇基于Python对象引用、可变性和垃圾回收详解。小编觉得挺不错的,现在就分享给大家,也给大家做个参考。
变量不是盒子
在示例所示的交互式控制台中,无法使用“变量是盒子”做解释。图说明了在 Python 中为什么不能使用盒子比喻,而便利贴则指出了变量的正确工作方式。
变量 a 和 b 引用同一个列表,而不是那个列表的副本
>>> a = [1, 2, 3]
>>> b = a >>> a.append(4) >>> b [1, 2, 3, 4]
如果把变量想象为盒子,那么无法解释 Python 中的赋值;应该把变量视作便利贴,这样示例中的行为就好解释了
注意:
对引用式变量来说,说把变量分配给对象更合理,反过来说就有问题。毕竟,对象在赋值之前就创建了
标识、相等性和别名
Lewis Carroll 是 Charles Lutwidge Dodgson 教授的笔名。Carroll 先生指的就是 Dodgson 教授,二者是同一个人。