从python中获取容器父对象

从python中获取容器父对象,第1张

从python中获取容器/父对象

传递对Bar对象的引用,如下所示:

class Foo(object):    def __init__(self):        self.text = "Hello World"  # has to be created first, so Bar.__init__ can reference it        self.bar = Bar(self)class Bar(object):    def __init__(self, parent):        self.parent = parent        self.newText = parent.textfoo = Foo()

编辑:
正如@thomleo指出的那样,这可能导致垃圾回收问题。建议的解决方案位于http://eli.thegreenplace.net/2009/06/12/safely-
using-destructors-in-python/中
,看起来像

import weakrefclass Foo(object):    def __init__(self):        self.text = "Hello World"        self.bar = Bar(self)class Bar(object):    def __init__(self, parent):        self.parent = weakref.ref(parent)    # <= garbage-collector safe!        self.newText = parent.textfoo = Foo()


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zaji/5507843.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-12-13
下一篇 2022-12-13

发表评论

登录后才能评论

评论列表(0条)

保存