On Tue, Jul 7, 2020 at 10:28 PM Frank Millman <fr...@chagford.com> wrote: > > Hi all > > After iterating over a sequence, the final element is still accessible. > In this case, the variable 'i' still references the integer 4. >
Yes, it's guaranteed. It isn't often useful; but the variant where there's a "break" in the loop most certainly is. If you hit the break, the iteration variable will still have whatever it had at the end. This is a great use of 'else' (arguably the primary use of it). You do something like: for thing in iterable: if want(thing): break else: thing = None If the iterable is empty, you go to the else. If you don't find the thing you want, you go to the else. But if you find it and break, thing has the thing you wanted. ChrisA -- https://mail.python.org/mailman/listinfo/python-list