在python脚本中建立自引用函数的操作

时间:2015-08-21 14:30:33

标签: python

我是python的新手,我正在尝试理解一段代码(我不能发布实际的代码),其中包含一个在其代码中引用自身的函数,它似乎不是递归的我无法解决它的影响。 我的意思的一个例子如下:

def function(self):
    if self.property == 1:
        a = self.object1.function
    elif self.property == 2:
        a = self.object1.function + self.object2.function

这可能是非常明显的,但是我看不到它,我已经阅读了许多关于递归函数或自引用函数的先前问题,但我找不到任何结构这些线,谢谢!< / p>

1 个答案:

答案 0 :(得分:0)

看起来这个函数是一个类的一部分,它是一个递归数据结构,比如一个有子节点的Tree。在这种情况下,每个实例至少有两个子object1object2

你认为这个function没有调用自身(递归)是正确的,而是在它的子节点上调用function方法。

在某些时候,function将返回一个字符串或数字;假设因为+ if self.property == 2

同样,这类似于树数据结构。

class Tree(): def __init__(left, property, right): self.property = property self.object1 = left self.object2 = right