如何在Python中使用不同类的实例调用类方法?

时间:2014-01-05 23:47:34

标签: python class python-2.7 tree binary-tree

我正在尝试使用两个类实现二叉树 - 节点和二叉树。当我插入节点(左或右)时,我使用的方法insert_left_nodeinsert_right_nodeclass BinaryTree的方法,但我也在使用{{1创建一个节点。每次插入节点后,都会返回当前对象。

现在,如何使用返回的对象调用类BinaryTree的插入方法 - current。例如。在代码的倒数第二行,声明 class Node 失败, n3 = n1.insert_left_node(33)

我需要另一种方法来实现这一目标。

代码:

AttributeError: 'Node' object has no attribute 'insert_left_node'

1 个答案:

答案 0 :(得分:2)

你的要求字面上没有任何意义。要实现您想要的功能,您只需将所需的方法添加到要使用的类中即可。尝试类似以下的内容:

class Node(object):
    def __init__(self, data):
        self.data = data
        self.left = None
        self.right = None

    def insert_left_node(self, data):
        self.left = Node(data)

    def insert_right_node(self, data):
        self.right = Node(data)