07 2018 档案
摘要:1内建属性的坑: class Person(): def __getattribute__(self, item): print('执行属性拦截') if(item.startswith('a')): return 'hahaha' else: return self.test def test(s
阅读全文
摘要:随着你的程序运⾏,Python解释器保持对新创建的对象,以及因为引⽤计数为零⽽被释放掉的对象的追踪。 被分配对象的计数值与被释放对象的计数值之间的差异在逐渐增⻓。⼀旦这个差异累计超过某个阈值,则Python的收集机制就启动了,并且触动上边所说的零代算法,释放"浮动的垃圾",并且将剩下的对象移动到一代
阅读全文
摘要:标记-清除 Python的引⽤计数算法不能够处理互相指向⾃⼰的对象。 Python使用一种不同的链表来维持追踪活跃的对象.而不将其称之为"活用列表",Python的内部C代码将其称为零代. Python会循环遍历零代列表上的每个对象,检查列表中每个互相引⽤的对象,根据规则减掉其引⽤计数。 通过识别内
阅读全文