Python:从' n字符串值调用对象

时间:2013-10-02 16:09:41

标签: python class loops

我真诚地希望这不是重复,但我找不到答案(你会注意到我甚至不知道如何提出这个问题!)。

我有一个类和许多def的python代码。需要花费太多时间来解释我为什么要这样做,但我确实能够:

class A:
    def a(self):
         some argument

    def b(self):
         another argument

所以要打电话给def,我只是说:

A().a()
A().b()

我想做的是让第三个def看起来像这样:

    def c(self):

         process = [A().a(), A().b(), A().a(), A().a()] #This sequence is just an example - there are many more def's.

         for i in process:
                  print 'Hello'
                  i
                  print 'Bye'

我不知道这是否有意义?目前发生的是调用过程部件,然后多次打印两条打印行。

感谢。

1 个答案:

答案 0 :(得分:3)

这可能会有效吗?

def c(self):

     process = [self.a, self.b, self.a, self.a] 

     for i in process:
              print 'Hello'
              i()
              print 'Bye'

在原始示例中,您不是存储函数,而是在构建列表时调用它们。方法的返回值存储在列表中,这就是为什么以后无法调用它们的原因。