def _fill ( self ) : try : self . _head = self . _iterable . next ( ) except StopIteration : self . _head = None
what can iterators be iterated only once in python
Advance the iterator without returning the old head .
def _fill(self):
    """Advance the iterator without returning the old head."""
    try:
      self._head = self._iterable.next()
    except StopIteration:
      self._head = None