I have the following code:
for i in list1:
if i == 5:
#skip the NEXT iteration (not the end of this one)
else:
#do something
How do I skip the iteration that comes after the iteration that throws the skip. For example, if list1=[1, 2, 3, 4, 5, 6, 7]
, the loop will skip 6 and go straight to 7 because 5 triggered the skip
I've seen this question and several others, but they all deal with skipping the current iteration, while I want to skip the next iteration. The answers to those questions suggest continue
, which as far as I can tell will stop the remainder of the current iteration and move on to the next one, which is not what I want. How can I skip a single iteration in a loop?
Edit: Using next()
has been suggested, but this does not work for me. When I run the following code:
a = [1, 2, 3, 4, 5, 6, 7, 8]
ai = iter(a)
for i in a:
print i
if i == 5:
_ = next(ai)
I get
1
2
3
4
5
6 #this should not be here
7
8
Using next()
is also the suggestion in this question: Skip multiple iterations in loop python