[code-quality] pylint: Else clause on a loop without break statement

Carl Crowder carl.crowder at gmail.com
Sun Jan 12 16:18:48 CET 2014


Ian, it's the opposite - 'else' is only triggered if *no* break statement
is encountered.


On 12 January 2014 16:12, Ian Cordasco <graffatcolmingov at gmail.com> wrote:

> I don't see any mesage from pylint in your email, could you post it again?
>
> Regardless, I think what you're disagreeing with is the language
> specification. The documentation specifies that the `else` is only
> triggered on breaks:
>
> http://docs.python.org/2/tutorial/controlflow.html#break-and-continue-statements-and-else-clauses-on-loops
>
> On Sun, Jan 12, 2014 at 8:57 AM, Kay Hayen <kay.hayen at gmail.com> wrote:
> >
> > Hello,
> >
> > often I write code like this:
> >
> > def _areConstants(expressions):
> >     for expression in expressions:
> >         if not expression.isExpressionConstantRef():
> >             return False
> >
> >         if expression.isMutable():
> >             return False
> >     else:
> >         return True
> >
> > That is to search in an iterable, and return based on finding something,
> or
> > returning in the alternative, I specifically prefer the "else:" branch
> over
> > merely putting it after the "for" loop.
> >
> > This triggers the above message, which I consider flawed, because as
> soon as
> > there is a "raise", or "return", that should be good enough as well.
> > Basically any aborting statement, not only break.
> >
> > I wanted to hear your opinion on this, pylint bug, or only in my mind.
> >
> > Yours,
> > Kay
> > _______________________________________________
> > code-quality mailing list
> > code-quality at python.org
> > https://mail.python.org/mailman/listinfo/code-quality
> _______________________________________________
> code-quality mailing list
> code-quality at python.org
> https://mail.python.org/mailman/listinfo/code-quality
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.python.org/pipermail/code-quality/attachments/20140112/cba8a048/attachment.html>


More information about the code-quality mailing list