1

我正在重构我的一个程序。基本上我将所有类都移到一个模块中。

现在我面临的问题是某些模块代码依赖于我在主程序中实例化的类的实例。当然我可以直接将实例传递给方法。或pickle实例。或者将属性定义为global. 最好的方法是什么?

4

1 回答 1

1

一种可能性可能是在实例化时将实例传递给类:

class Bar(object):
    def __init__(self, inst):
        self.inst = inst
    def method(self):
        # use self.inst

inst = Foo()
bar = Bar(inst)
于 2013-08-29T11:31:21.533 回答