An iterator is an object that has a __next__ dunder method which returns the next item in the sequence. If there are no more items in the sequence, it should raise a StopIteration exception.