Python 类中调用自身时,为什么每次输出的 id 都不相同?
python类的内存分配问题:类调用自身时为什么id不同?
在python类中,当调用自身并返回时,每次输出的id都不同,这与我们的直观理解相悖。
问题所在是Chain('%s/%s'%(self._path, path))这一行代码。它在调用自身时创建了一个新的Chain实例,而不是返回对自身实例的引用。
为了解决这个问题,需要将return Chain('%s/%s'%(self._path, path))修改为return self,这样在调用自身时返回的将是对同一实例的引用,从而导致id相同。
以上就是Python 类中调用自身时,为什么每次输出的 id 都不相同?的详细内容,更多请关注其它相关文章!