我的代码:
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'
问题在哪里?
cel
等于S.first
。S.first
等于None
。当你试图从cel
m中获得val
时,你试图获得None
的val
属性。
没有一个类有val
属性…所以可以赋值它,但我建议避免它,因为在没有在类本身中声明它的情况下在某处创建它是不清楚的。