用python打印带指针的链表

我是一个 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 -> None\n'

 - 3 -> 

 + 3 -> None

我不确定 \n 想说什么?


慕慕森
浏览 189回答 1
1回答

撒科打诨

这\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)
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Python