Ways to increment Iterator from inside the For loop in Python Last Updated : 24 Feb, 2023 Comments Improve Suggest changes Like Article Like Report For loops, in general, are used for sequential traversal. It falls under the category of definite iteration. Definite iterations mean the number of repetitions is specified explicitly in advance. But have you ever wondered, what happens, if you try to increment the value of the iterator from inside the for loop. Let's see with the help of the below example.Example: Python3 lis = [1, 2, 3, 4, 5] for i in range(len(lis)): print(lis[i]) i += 2 Output: 1 2 3 4 5 The above example shows this odd behavior of the for loop because the for loop in Python is not a convention C style for loop, i.e., for (i=0; i<n; i++) rather it is a for in loop which is similar to for each loop in other languages. However, there are few methods by which we can control the iteration in the for loop. Some of them are - Using While loop: We can't directly increase/decrease the iteration value inside the body of the for loop, we can use while loop for this purpose.Example: Python # Using while loop lis = [1, 2, 3, 4, 5] i = 0 while(i < len(lis)): print(lis[i], end = " ") # Changing the value of # i inside the loop will # change it's value at the # time of checking condition i += 2 Output: 1 3 5 Time complexity: O(n/2) = O(n), where n is the length of the list. Auxiliary space: O(1), as we are not using any extra data structure, only one variable (i) is being used. Using another variable: We can use another variable for the same purpose because after every iteration the value of loop variable is re-initialized.Example: Python # Using for loop lis = [1, 2, 3, 4, 5] i = 0 for j in range(len(lis)): # Terminating condition for i if(i >= len(lis)): break print(lis[i], end = " ") i += 2 Output: 1 3 5 Using Range Function: We can use the range function as the third parameter of this function specifies the step.Note: For more information, refer to Python range() Function.Example: Python3 # Using for loop lis = [1, 2, 3, 4, 5] for i in range(0, len(lis), 2): print(lis[i], end = " ") Output: 1 3 5 Comment More infoAdvertise with us Next Article Ways to increment Iterator from inside the For loop in Python P prakhar_kochar Follow Improve Article Tags : Python python-basics Practice Tags : python Similar Reads Specifying the increment in for-loops in Python Let us see how to control the increment in for-loops in Python. We can do this by using the range() function. range() function range() allows the user to generate a series of numbers within a given range. Depending on how many arguments the user is passing to the function, the user can decide where 2 min read Infinite Iterators in Python Iterator in Python is any python type that can be used with a âfor in loopâ. Python lists, tuples, dictionaries, and sets are all examples of inbuilt iterators. But it is not necessary that an iterator object has to exhaust, sometimes it can be infinite. Such type of iterators are known as Infinite 2 min read How to Decrement a Python for Loop Pythonâs for loop is commonly used to iterate over sequences like lists, strings, and ranges. However, in many scenarios, we need the loop to count backward. Although Python doesn't have a built-in "decrementing for loop" like some other languages (e.g., for(int i = n; i >= 0; i--) in C++), there 2 min read Python - Iterate through list without using the increment variable Python Lists is much like flexible size arrays, declared in other languages like vector in C++, array list in Java, etc. Lists are heterogeneous, making it the most effective feature in Python. Lists are mutable, and hence can be modified even after they have been formed. The most common approach is 2 min read Combinatoric Iterators in Python An iterator is an object that can be traversed through all its values. Simply put, iterators are data type that can be looped upon. Generators are iterators but as they cannot return values instead they yield results when they are executed, using the 'yield' function. Generators can be recursive jus 4 min read Like