php中文网

Python 类中调用自身时,为什么每次输出的 id 都不相同?

php中文网

python类的内存分配问题:类调用自身时为什么id不同?

在python类中,当调用自身并返回时,每次输出的id都不同,这与我们的直观理解相悖。

问题所在是Chain('%s/%s'%(self._path, path))这一行代码。它在调用自身时创建了一个新的Chain实例,而不是返回对自身实例的引用。

为了解决这个问题,需要将return Chain('%s/%s'%(self._path, path))修改为return self,这样在调用自身时返回的将是对同一实例的引用,从而导致id相同。

立即学习“Python免费学习笔记(深入)”;

以上就是Python 类中调用自身时,为什么每次输出的 id 都不相同?的详细内容,更多请关注php中文网其它相关文章!