def len_link(lst):
"""Returns the length of the link.
>>> lst = link(1, link(2, link(3, link(4))))
>>> len_link(lst)
4
>>> len_link(empty)
0
"""
Run Code Online (Sandbox Code Playgroud)
嗨,如果有人可以提供帮助,我很难理解如何找到链表的长度,我将不胜感激。
我想弄清楚将列表转换为链接列表。我已经有一个链接类,但我正在尝试弄清楚如何将列表转换为链接列表,例如:
def list_to_link(lst):
"""Takes a Python list and returns a Link with the same elements.
>>> link = list_to_link([1, 2, 3])
>>> print_link(link)
<1 2 3>
"""
class Link:
empty = ()
def __init__(self, first, rest=empty):
assert rest is Link.empty or isinstance(rest, Link)
self.first = first
self.rest = rest
def print_link(link):
"""Print elements of a linked list link."""
>>> link = Link(1, Link(2, Link(3)))
>>> print_link(link)
<1 2 3>
>>> link1 = Link(1, Link(Link(2), Link(3)))
>>> print_link(link1)
<1 <2> 3> …Run Code Online (Sandbox Code Playgroud) 嗨,所以我试图弄清楚如何使用Python创建一个迭代器对象,删除重复项或更多,以便省略重复.
例如,我有一个列表(1,2,3,3,4,4,5),我得到(1,2,3,4,5)
我明白为了获得迭代器对象,我必须创建它.所以:
Class Unique:
def __init__(self, n):
self.i = 0
self.n = n
def __iter__(self):
return self
def __next__(self):
if self.i < self.n:
Run Code Online (Sandbox Code Playgroud)
我实际上并不完全确定在这个问题上接下来要做什么.在此先感谢任何意见或帮助!