0

我所拥有的是:

工厂函数,带有嵌套类(因此直接实例化类更加困难)

• 在类中,我有一个更新方法,它应该调用工厂函数来检索其实例的更新版本

它是这样的:

def factory(someStr):
    #in my actual code I retrieve an updated value
    #for someStr from the internetz
    #I also have some other parameters, hence
    #the someInt parameter

    class NestedClass(object):
        def __init__(self, someStr, someInt):
            #... intialization code
            #someStr becomes a property here
            #(I omited that code)

        def update(self):
            return factory(self.someStr)

    return NestedClass(someStr, int(someStr))

这是我想出的第一件事,我有点喜欢这个设计(主要是如果我经常更新它的语法真的很短)。不利的一面是,我创建了许多更新的对象。

不幸的是,它给了我一个错误,这是我所期望的('dict not callable',因为嵌套类的命名空间)。

有什么办法可以保留这个设计并调用函数吗?

4

0 回答 0