AttributeError:类型对象“ Node”没有属性“ value”

时间:2019-11-17 22:55:14

标签: python-3.x attributeerror

class Node():

    def __init__(self, value):
        self.value = value
        self.prev = None
        self.next = None

class LinkedList():

    def __init__(self):
        self.head = None
        self.tail = None

    def push(self, item):
        new_node = Node
        if self.tail is None:
            self.head = self.tail = new_node
        else:
            new_node.prev = self.tail
            self.tail.next = new_node
            self.tail = new_node

    def pop(self):
        if self.tail is not None:
            if self.tail.prev is not None:
                self.tail = self.tail.prev
                self.tail.next = None
            else:
                self.tail = self.head = None
            return self.tail.value
        else:
            return None

你能帮我吗?

当我使用pop时,我的代码将遇到该问题: 弹出的文件“ C:\ Users \ ME \ source \ repos \ PythonApplication2 \ PythonApplication2 \ PythonApplication2.py”,第28行     返回self.tail.value AttributeError:类型对象“ Node”没有属性“ value”

2 个答案:

答案 0 :(得分:0)

您的push函数没有创建具有任何值的节点对象。

代替

new_node = Node

您需要以下内容:

new_node = Node(5)  # pass in some value

答案 1 :(得分:-1)

原因是因为没有名为value的属性/类属性。

尝试:

finalDF

其中1可以是任何值,并表示值。

new_node = Node(1)