尝试创建python单链接列表,但我无法创建迭代器。 这是我的代码:
class LinkedList:
def __init__(self):
self._head=self
self._tail=self
self._size=0
def __iter__(self):
print 'Calling Iterator\n\n'
_ListIterator(self._head)
class ListObj:
def __init__(self,value):
self._data=value
self._pointingTo=None
class _ListIterator:
def __init__(self,listHead):
LIST=None
self._curNode=listHead
print dir(self._curNode)
def __next__(self):
if self._curNode._pointingTo is None:
raise StopIteration
else:
item=self._curNode._data
self._curNode=self._curNode._pointingTo
return item
这个迭代器因为抛出错误
而失败TypeError: __iter__ returned non-iterator of type 'NoneType'
答案 0 :(得分:0)
_ListIterator(self._head)
你忘了return
这个。