Woops. Sorry for the confusion. I never end up using that particular construct so I never get it right.
On Sun, Jan 12, 2014 at 9:18 AM, Carl Crowder email@example.com wrote:
Ian, it's the opposite - 'else' is only triggered if *no* break statement is encountered.
On 12 January 2014 16:12, Ian Cordasco firstname.lastname@example.org 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:
On Sun, Jan 12, 2014 at 8:57 AM, Kay Hayen email@example.com wrote:
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 firstname.lastname@example.org https://mail.python.org/mailman/listinfo/code-quality
code-quality mailing list email@example.com https://mail.python.org/mailman/listinfo/code-quality