一个类中的递归

Los*_*Lin 5 python

我试图在类声明中放置一个递归公式

class SomeNode:

    def __init__(self, a):
        leng = len(a)
        half= leng/2
        self.firstnode=a[0][0]
        self.child1=SomeNode([a[i]for k in range(leng)])
        self.child2=SomeNode([a[j] for j in range(leng)])


    def recursfunc(self):
        print self.firstnode
        recursfunc(self.child1)
        recursfunc(self.child2)
Run Code Online (Sandbox Code Playgroud)

但是我一直收到错误消息NameError:未定义全局名称'recursfunc'

AJ.*_*AJ. 11

你需要使用 self.recursfunc()

  • 或者更好的`self.child1.recursfunc()`. (3认同)