为什么weakref不支持Python中的内置类型?

时间:2011-10-10 10:09:40

标签: python weak-references

在Python weakref文档(http://docs.python.org/library/weakref.html)中,它表示

  

list和dict等几种内置类型不直接支持   弱引用但可以通过子类化添加支持

我认为在一些真实案例中为大字典创建弱点可能很有用。我想知道实施背后的原因是什么?

2 个答案:

答案 0 :(得分:6)

大多数内置类型都不是直接弱引用的(例如str,int,float,list,dict,None),并且有一些甚至不能通过子类化来实现(例如CPython中的元组) )。

有关几种内置类型的weakref的底层实现的一些细节可以在this March-2005 python-list post by Raymond Hettinger中找到。

答案 1 :(得分:0)