'Get the next item in the iterable without advancing our position.'

def peek(self):

    if (not self.item):
        try:
            self.item = self.iterator.next()
        except StopIteration:
            return None
    return self.item
