从嵌套类访问工厂函数

时间:2013-05-17 09:09:13

标签: python class python-3.x nested factory

我拥有的是:

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

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

这是这样的:

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',因为嵌套类的命名空间)。

有没有办法保留这个设计并调用函数?

0 个答案:

没有答案