> On 23 Jul 2020, at 17:04, Rob Cliffe via Python-ideas > <python-ideas@python.org> wrote: > > > > On 23/07/2020 16:24, Stephen J. Turnbull wrote: >> Steven D'Aprano writes: >> > On Wed, Jul 22, 2020 at 06:14:39AM +0300, Paul Sokolovsky wrote: >> >> > > But no, loop executes, *or else* the following "else" block >> > > executes ;-). >> >> He means the loop *suite* executes (this includes "getting to" a break >> statement or other control flow that leaves the loop *statement* >> entirely), and if it doesn't, the else suite does. This is "why" such >> nonlocal exits differ from finally in that they don't run the else suite. >> >> I personally think this is a perfectly clear and convincing argument >> for "else" as the keyword for this statement (once "suite" is added to >> Paul's phrasing). >> >> This is why programmers should major in English, and do a graduate >> degree in programming if they really think they need a degree in >> programming. >> >> > The upholders of the status quo regularly provide gallant explanations of why > "else" is perfectly natural, even intuitive. > The fact is, it isn't. If it were, it wouldn't *need* to be repeatedly > explained by gurus to lesser mortals. I can't think of any other area of > Python that needs to be defended so regularly and so vociferously, nor that > very experienced Python programmers confess they find confusing. Swelp me, > someone in this very thread (Barry) misunderstood it[1]. And suggesting that > those of us who don't find it clear lack skill in English is just plain > insulting.
Yes indeed, my intuition cannot get the for else into my head. And as I proved wonderfully I got it wrong. I never use the for else and in the rare cases I have seen it in code reviews ask that it is replaced because so few people know what it means. Barry > > YMMV, but the only way I can grok it when I see it is to mentally translate > "else" to "if no break". This is mental effort that would be spared or at > least diminished if it were spelt in a more obvious way in the first place. > > Best wishes > Rob Cliffe > [1] or at least I think he did, I had trouble understanding him. > _______________________________________________ > Python-ideas mailing list -- python-ideas@python.org > To unsubscribe send an email to python-ideas-le...@python.org > https://mail.python.org/mailman3/lists/python-ideas.python.org/ > Message archived at > https://mail.python.org/archives/list/python-ideas@python.org/message/5GP4ECQNS456YW5I73F4Y7N7ALSLHDQ2/ > Code of Conduct: http://python.org/psf/codeofconduct/
_______________________________________________ Python-ideas mailing list -- python-ideas@python.org To unsubscribe send an email to python-ideas-le...@python.org https://mail.python.org/mailman3/lists/python-ideas.python.org/ Message archived at https://mail.python.org/archives/list/python-ideas@python.org/message/CM37P5UODT4OF4NKR6FM32IC24GO7NFK/ Code of Conduct: http://python.org/psf/codeofconduct/