Python iter() Function

The iter() function in Python returns an iterator object. An iterator object allows to traverse a container, like a list or a tuple etc. For example:

x = iter(["01", "Wed", "Dec", "2021"])
print(next(x))
print(next(x))
print(next(x))
print(next(x))

The output will be:

01
Wed
Dec
2021

Note: The next() function returns the next item of an iterator.

Python iter() Function Syntax

The syntax of iter() function in Python, is either:

iter(iterable)

Or

iter(callable, sentinel)

In both cases, the function iter() returns an iterator object. In the first form, the argument must be an iterator or a sequence. Whereas in the second form, the callable is called until it returns the value given/equals to sentinel.

Python iter() Function Example

Here is an example of iter() function in Python:

a = [1, 2, 3, 4]
b = (5, 6, 7)

print(iter(a))
print(iter(b))

print("-----------")

print(next(iter(a)))
print(next(iter(a)))

print("-----------")

x = iter(a)
print(next(x))
print(next(x))

print("-----------")

x = iter(b)
print(next(x))
print(next(x))

The sample output produced by this program, is shown in the snapshot given below:

python iter function

Python iter() Function with sentinel (Second Parameter)

This program is also an example of iter() function. This program uses the iter() function with both first and second (sentinel) parameters.

class CodesCracker:
    def __init__(self):
        self.start = 0

    def myfun(self):
        self.start = self.start + 1
        return 2 * self.start


a = CodesCracker()
for x in iter(a.myfun, 22):
    print(x)

The output will be the table of 2, that is:

2
4
6
8
10
12
14
16
18
20

That is, the function iter() continues calling the a.myfun (the function named myfun of an object a, the object a is of the class CodesCracker. Therefore myfun() of that class will get called) until it returns a value equals to 22.

Python Online Test


« Previous Function Next Function »


Liked this post? Share it!