When you work in Python, there is a specific meaning of iterable and iterator. Which is as follows:-
So, the world iteration is a general term for taking each item of something(any lists, tuples etc), one after another. When you use a loop, to go over a group of items, that is called iteration.
While, an iterable is an object that has an __iter__ method which returns an iterator, or which defines a __getitem__ method that can take sequential indexes starting from zero (and raises an IndexErrorwhen the indexes are no longer valid). So an iterable is an object that you can get from an iterator.
Both Python 2 and Python 3 has a method called __next__. So an iterator is an object with a __next__ method.
So, whenever you use a for loop, or map, or a list comprehension, etc. In Python, When going through the process of iteration the next method is automatically called to get each item from the iterator.