Python For Loops Do Not Behave As Expected

I realize I’m rather late, and this may be a bit besides the point, but for situations like this, it is often simpler, more elegant and more performant to use Python’s comprehensions feature. However, one important note: This will create a new list object, rather than modifying your existing one in place, which may or may not be what you want if you have other code that references it. See your previous question for an excellent example of where this comes into play.

NumList = [num + 1 for num in NumLst]

For reference, a corrected form of your original logic:

for idx, num in enumerate(NumLst):
    NumLst[idx] = NumLst[idx] + 1