Gregory Ewing <greg.ew...@canterbury.ac.nz> writes: > The whole reason to write something as a comprehension is because you > want to express it declaratively. You're saying "this is the list I > want, I don't care how you compute it."
That's certainly a strong reason for my choosing comprehension expressions: when I don't want to write a sequence of statements in a loop, an expression communicates the intent (“this is one expression with one output; think of it as one operation”). > Likewise, the reader should be able to read it as "this is the list > produced, and you *don't have to care* how it gets computed." So I find the ‘while’ proposed addition to be counter to that purpose, and describe it as confounding the ability of the reader to reason about the expression. > Introducing procedural elements such as "while" into a comprehension > messes that up, because suddenly the reader *does* have to care about > details of how it gets computed. Thanks for stating it so well, Greg. -- \ “The good thing about science is that it's true whether or not | `\ you believe in it.” —Neil deGrasse Tyson, 2011-02-04 | _o__) | Ben Finney -- https://mail.python.org/mailman/listinfo/python-list