On Thu, 2 Nov 2017 08:23 am, Ned Batchelder wrote: > Apart from the questions of backward compatibility etc (Python is > unlikely to ever go through another shift like the 2/3 breakage), are > you sure "then" is what you mean? This won't print "end": > > for i in range(10): > print(i) > else: > print(end)
You are neither the first nor the last person to have mistakenly understood the "else" clause to run only if the main loop does not. It is a common error. I've done it. And this demonstrates exactly why the choice of keyword is so poor. If somebody of your experience can misread it, I don't feel so bad about how long it too me to understand it when I was a newbie. -- Steve “Cheer up,” they said, “things could be worse.” So I cheered up, and sure enough, things got worse. -- https://mail.python.org/mailman/listinfo/python-list