我是一个python初学者,正试图创建一个函数,用指针打印链表的值'->'我创建了一个解决方案,但我的测试人员似乎失败了,我想知道为什么。
class LinkNode:
def __init__(self,value,nxt=None):
assert isinstance(nxt, LinkNode) or nxt is None
self.value = value
self.next = nxt
def print_list(lst):
"""
>>> print_list(LinkNode(3, None))
3 -> None
"""
temp = lst
while temp:
print(temp.value, sep = '', end=' -> ')
temp = temp.next
每次我运行它时,它都会创建相同的输出,看起来也一样,但有一个错误:
Test Failed: '3 -> ' != '3 -> Nonen'
- 3 ->
+ 3 -> None
我不确定他想说什么?
n
是"新行"的转义码。
除非在同一个打印调用中打印多个项目,否则sep
参数不会执行任何操作。
您也没有打印最终的None
。在while循环之后执行此操作。
def print_list(lst):
"""
>>> print_list(LinkNode(3, None))
3 -> None
"""
temp = lst
while temp:
print(temp.value, end=' -> ') # you don't need sep here.
temp = temp.next
print(temp)