Search code examples
pythonincrementxrange

Increment on certain condition with xrange()


A very short and probably easy to answer question for the ones with more programming experience. I want to increment my counter by one if a certain condition is met. I use xrange() in my for-loop. Can I manually increment i or do I have to build by own counter?

for i in xrange(1,len(sub_meta),2):
    if sub_meta[i][1] < sub_meta[i-1][1]:
            dict_meta[sub_meta[i-1][0]]= sub_meta[i][0]
    elif sub_meta[i][1] == sub_meta[i-1][1]:
            dict_meta[sub_meta[i-1][0]]= ''
            i += 1

Solution

  • i = 1
    while i < len(sub_meta):
        if sub_meta[i][1] < sub_meta[i-1][1]:
            dict_meta[sub_meta[i-1][0]]= sub_meta[i][0]
        elif sub_meta[i][1] == sub_meta[i-1][1]:
            dict_meta[sub_meta[i-1][0]]= ''
            i += 1
        i += 2