Python链表:如何访问下一个值?

时间:2016-11-11 16:38:09

标签: python linked-list

这是我的代码:

class Node:
    def __init__(self, cargo=None, next=None):
        self.cargo = cargo
        self.next = next


class LinkedList:
    def __init__(self):
        self.first = None
        self.last = None

# then I declare a list and a node
S = LinkedList()
cel = Node
cel = S.first

现在我想在列表中添加一些东西:

  n = 0
  x = 0
  while n < 5:
      x = input()
      cel.val = x
      cel = cel.next

然而,我得到一个错误声明:

 'NoneType' object has no attribute 'val'
 'NoneType' object has no attribute 'next'

问题出在哪里?

1 个答案:

答案 0 :(得分:1)

cel等于S.firstS.first等于None。 当您尝试从val m获取cel时,您会尝试获取val None的属性。

你们没有一个类具有val属性......所以可以分配它,但我建议避免使用它,因为在某个地方创建它而不在类本身中声明它是不明确的