
On Sat, Jun 20, 2009 at 9:22 AM, MRAB<python@mrabarnett.plus.com> wrote:
Ben Finney wrote:
Jim Jewett <jimjjewett@gmail.com> writes:
On Fri, Jun 19, 2009 at 3:39 AM, Lie Ryan<lie.1296@gmail.com> wrote:
res = [x**x as F for x in nums if F < 100]
This, I have wanted.
You have it:
res = [f for f in (x**x for x in nums) if f < 100]
In addition to the fact that this works now in existing Python, I find it clearer than the above syntax you say you want.
How about:
res = [F for x in nums with x**x as F if F < 100]
:-)
That toggles the first part of the comprehensions to be or not be an expression, depending on if there is a with clause later. You could miss this when you read it, and it opens the door to doing more strange things, like: res = [F/2 for x in nums with x**x as F if F < 100] This is basically a strangely syntaxed nested loop -- Read my blog! I depend on your acceptance of my opinion! I am interesting! http://techblog.ironfroggy.com/ Follow me if you're into that sort of thing: http://www.twitter.com/ironfroggy