在__init__中调用类/函数是正确的吗?

时间:2013-12-16 13:31:18

标签: python python-2.7

我不确定这是否是一种正确的方法,但我有一个类,其中一些函数在另一个文件上使用相同的类。问题是,可以在 init 下一次调用一个类吗?如果我使用查询/插入或http请求的类来执行它会有什么样的复杂性?或者我应该避免这样做?

贝娄,我的意思的一个例子:

我正在做的事情:

classfileA.py

class StackExample:

    def __init__(self, input_a, input_b)
        self.var_a = input_a
        self.var_b = input_b

    def say_hello()
        print "My bacon is : " + self.var_a
        print "But still boss as : " + self.var_b

-

file2.py

import classfileA

class Action:

    def __init__(self, input_a, input_b)
        self.var_a = input_a
        self.var_b = input_b    

    def test_a()
        start = classfileA.StackExample(self.var_a,self.var_b)
        start()

    def test_b()
        start = classfileA.StackExample(self.var_a,self.var_b)
        start()

    def test_c()
        start = classfileA.StackExample(self.var_a,self.var_b)
        start()

if __name__ == '__main__':
    run = action('my love','blind')
    run_cm.main()

我认为我能做什么:

classfileA.py:

class StackExample:

    def __init__(self, input_a, input_b)
        self.var_a = input_a
        self.var_b = input_b

    def say_hello()
        print "My bacon is : " + self.var_a
        print "But still boss as : " + self.var_b

-

file2.py

import classfileA

class Action:

    def __init__(self, input_a, input_b)
        self.var_a = input_a
        self.var_b = input_b
        # call inside __init__
        self.start = classFileA.StackExample(self.var_a,self.var_b)


    def test_a()        
        self.start()

    def test_b()
        self.start()

    def test_c()
        self.start()


if __name__ == '__main__':
    run = Action('my love','blind')
    run.test_a()

提前致谢。

1 个答案:

答案 0 :(得分:1)

是的,从someClass.StackExample对象和调用对象方面来看,没有任何东西会爆炸,这很好。