在python中递归调用类中的方法

时间:2016-07-01 15:33:13

标签: python recursion

class Example(object):
    def doSomething(self, num):
        if(num < 10 ) : 
            //print the number
        else : 
            //call doSomething() again

此处如何在方法内的doSomething条件中调用else方法?

1 个答案:

答案 0 :(得分:3)

使用self.doSomething(num-1)调用它,因为doSomething将引用全局函数而不是类中的函数。同时将print放在if之前,以便打印数字而不管它是什么(因此您可以看到数字减少)并在其中放置return

class Example(object):
    def doSomething(self, num):
        print num
        if(num < 10 ) : 
            return
        else : 
            self.doSomething(num-1)
>>> x = Example()
>>> x.doSomething(15)
15
14
13
12
11
10
9
>>>