为什么weakref不';你不支持Python中的内置类型吗?

为什么weakref不';你不支持Python中的内置类型吗?,python,weak-references,Python,Weak References,在pythonweakref文档()中,它说 一些内置类型(如list和dict)不直接支持 弱引用,但可以通过子类化添加支持 我认为为big dict创建weakref在某些实际情况下可能会有用。我想知道这种实现背后的原因是什么?我有根据地猜测,dict和list是在内部用于实现weakrefs的,所以这里会出现一种鸡蛋鸡的情况。大多数内置类型都不是直接弱引用的(例如str、int、float、list、dict、None),还有一些甚至不能通过子分类实现(例如,CPython中的元组) 有关

在pythonweakref文档()中,它说

一些内置类型(如list和dict)不直接支持 弱引用,但可以通过子类化添加支持


我认为为big dict创建weakref在某些实际情况下可能会有用。我想知道这种实现背后的原因是什么?

我有根据地猜测,dict和list是在内部用于实现weakrefs的,所以这里会出现一种鸡蛋鸡的情况。

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


有关几种内置类型的weakrefs的底层实现的详细信息,请参见。

谢谢。现在我明白了为什么tuple和str不能被弱引用。名单和口述如何?为什么我们必须对这些类型进行子类化来为它们创建弱引用?如果第二段中给出的提示不足以继续下去,那么我恐怕对python的内部结构了解不够,无法进一步解释。也许你最好在网上问这样的问题。我相信其中一位python开发人员将能够为您的问题提供明确的答案。