我是Python新手,在实现从链接列表中删除最后一个节点的函数时遇到了困难。这是我到目前为止的代码(我在一个名为Coderunner的在线平台上编写代码,该平台已经为我实现了一些背景代码,比如Node类):
class LinkedList:
def __init__(self):
self.head = None
def print_all(self):
current = self.head
while current != None:
print(current.get_data())
current = current.get_next()
def add(self, item):
new_node = Node(item)
new_node.set_next(self.head)
self.head = new_node
def remove_from_tail(self):
current = self.head
prev = current
while current != None:
current = current.get_next()
prev.set_next(current.get_next())
return current
运行以下代码时:
^{pr2}$我得到:
Removed: <__main__.Node object at 0x1063650>
Bike
Truck
谁能告诉我哪里出错了吗?似乎node对象得到了打印,但节点内部的值却没有打印出来。提前感谢您的帮助!在
看起来这段代码将从列表中删除所有节点。尝试类似于:
remove_from_trail方法返回的值属于Node类型。当您打印它时,您正在打印该节点对象。您需要访问节点内的值,可以使用:
查看对象有哪些方法和属性,然后调用要查找的属性。在
相关问题 更多 >
编程相关推荐