List is equivalent to arrays in other languages, with the extra benefit of being dynamic in size. In Python, list is a type of container in Data Structures, which is used to store multiple data at the same time. Unlike Sets, the list in Python are ordered and have a definite count.
There are multiple ways to iterate over a list in Python. Let’s see all different ways to iterate over a list in Python, and a performance comparison between them.
Method #1: Using For loop
1 3 5 7 9
Method #2: For loop and range()
In case we want to use the traditional for loop which iterates from number x to number y.
1 3 5 7 9
Iteratiner the index is not recommended if we can iterate over the elements(as done in Method #1).
Method #3: Using while loop
1 3 5 7 9
Method #4: Using list comprehension (Possibly the most concrete way).
1 3 5 7 9
Method #5: Using enumerate()
If we want to convert the list into an iterable list of tuples (or get the index based on a condition check, for example in linear search you might need to save the index of minimum element), you can use the enumerate() function.
0 , 1 1 , 3 2 , 5 3 , 7 4 , 9
Note: Even method #2 can be used to find the index, but method #1 can’t (Unless an extra variable is incremented every iteration) and method #5 gives a concise representation of this indexing.
Method #6: Using Numpy
For very large n-dimensional lists (for example an image array), it is sometimes better to use an external library such as numpy.
0 1 2 3 4 5 6 7 8
We can use
np.ndenumerate() to mimic the behaviour of enumerate. The extra power of numpy comes from the fact that we can even control the way to visit the elements (Fortran order rather than C order, say :)) but the one caveat is that the
np.nditer treats the array as read-only by default, so one must pass extra flags such as
op_flags=[‘readwrite’] for it to be able to modify elements.
- Python Iterate over multiple lists simultaneously
- Iterate over a dictionary in Python
- Iterate over a set in Python
- Iterate over characters of a string in Python
- Iterate over words of a String in Python
- Python - Iterate over Columns in NumPy
- Loop or Iterate over all or certain columns of a dataframe in Python-Pandas
- How to Iterate over Dataframe Groups in Python-Pandas?
- Different ways to iterate over rows in Pandas Dataframe
- How to iterate over rows in Pandas Dataframe
- How to iterate over the keys and values with ng-repeat in AngularJS ?
- How to iterate over filtered (ng-repeat filter) collection of objects in AngularJS ?
- How to iterate over an Array using for loop in Golang?
- Python | Ways to iterate tuple list of lists
- Python - Iterate through list without using the increment variable
- Python | Iterate through value lists dictionary
- Iterate associative array using foreach loop in PHP
- How to iterate through all selected elements into an array ?
- How to iterate through child elements of a div using jQuery ?
If you like GeeksforGeeks and would like to contribute, you can also write an article using contribute.geeksforgeeks.org or mail your article to firstname.lastname@example.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.
Improved By : Akanksha_Rai