Python | next() method

There are many ways to iterate over in Python. next() method also performs the similar task over the iterator. It can be the alternative to iteration in case length is not specified and inbuilt function is not allowed to use.

Syntax : next(iter, stopdef)

Parameters : iter : The iterator over which iteration is to be performed.stopdef : Default value to be printed if we reach end of iterator.

Returns : Returns next element from the list, if not present prints the default value. If default value is not present, raises the StopIteration error.

Code #1 : Demonstrating the working of next()

filter_none

editclose

play_arrow

linkbrightness_4code

# Python code to demonstrate

# working of next()

# initializing list

list1 =[1, 2, 3, 4, 5]

# converting list to iterator

list1 =iter(list1)

print("The contents of list are : ")

# printing using next()

# using default

while(1) :

val =next(list1,'end')

ifval =='end':

print('list end')

break

else:

print(val)

chevron_right

filter_none

Output:

The contents of list are :
1
2
3
4
5
list end

Code #2 : Performance Analysis

filter_none

editclose

play_arrow

linkbrightness_4code

# Python code to demonstrate

# next() vs for loop

importtime

# initializing list

list1 =[1, 2, 3, 4, 5]

# keeping list2

list2 =list1

# converting list to iterator

list1 =iter(list1)

print("The contents of list are : ")

# printing using next()

# using default

start_next =time.time()

while(1) :

val =next(list1,'end')

ifval =='end':

break

else:

print(val)

print("Time taken for next() is : "+str(time.time() -start_next))

# printing using for loop

start_for =time.time()

fori inlist2 :

print(i)

print("Time taken for loop is : "+str(time.time() -start_for))

chevron_right

filter_none

Output:

The contents of list are :
1
2
3
4
5
Time taken for next() is : 5.96046447754e-06
1
2
3
4
5
Time taken for loop is : 1.90734863281e-06

Result : For loop is better choice when printing the contents of list than next().

Applications : next() is the utility function for printing the components of container of iter type. Its usage is when size of container is not known or we need to give a prompt when the list/iterator has exhausted.

If you like GeeksforGeeks and would like to contribute, you can also write an article using contribute.geeksforgeeks.org or mail your article to contribute@geeksforgeeks.org. See your article appearing on the GeeksforGeeks main page and help other Geeks.

Please Improve this article if you find anything incorrect by clicking on the "Improve Article" button below.