我对编码非常陌生,我有一个基本问题,那就是用Python在双链接列表中打印一个节点。在
class Node():
def __init__(self, key = None, prev = None, next = None):
self.key = key
self.prev = prev
self.next = next
def __str__(self):
return ('[%s][%d][%s]' % (repr(self.prev), self.key, repr(self.next)))
显然,我还有一些列表类本身的代码。假设我有一个包含两个节点的双链接列表:
node1: key 21
node2: key 10
head --> node1 <==> node2
如果我打印(node1),我得到:
^{pr2}$这正是我想要的。在
所以2个问题:
“语法”或“混乱的代码”是否可以接受?
与其打印上一个和下一个节点的位置,我如何打印节点的名称,例如[node7][82][node9]
?
希望这有意义,谢谢你的帮助!在
而不是必须为每个
Node
初始化一个self.name
。您可以添加一个self.id
,在每次创建时使用递增的静态counter
初始化。在第1步添加一个静态
counter
并初始化self.id
属性{{{cd8>从cd8}开始。在
第2步修改}
__str__
函数,以获得prev
和next
的{self.prev
和self.next
的名称仅在不显示时显示None
。在使用
^{pr2}$self.__class__.__name__
恢复类的名称。在以下是一些示例:
相关问题 更多 >
编程相关推荐