[Python-ideas] New 3.x restriction in list comprehensions (original) (raw)

Dirkjan Ochtman dirkjan at ochtman.nl
Sat Sep 18 00:00:57 CEST 2010


On Fri, Sep 17, 2010 at 21:44, Raymond Hettinger <raymond.hettinger at gmail.com> wrote:

My question for the group is whether it would be a good idea to drop the new restriction.

I like the restriction and would actually advocate having it for regular for-loops too (though that would be a big no-no, I guess).

Here's why I never use them without parenthesis, in python 2:

(1 if True else 3, 4) (1, 4) (lambda x: x * x, 6) (<function at 0x100475ed8>, 6) [i for i in 2, 3] [2, 3] (i for i in 2, 3) File "", line 1 (i for i in 2, 3) ^ SyntaxError: invalid syntax

And in Python 3:

(1 if True else 3, 4) (1, 4) (lambda x: x * x, 6) (<function at 0x7f4ef41785a0>, 6) [i for i in 2, 3] File "", line 1 [i for i in 2, 3] ^ SyntaxError: invalid syntax (i for i in 2, 3) File "", line 1 (i for i in 2, 3) ^ SyntaxError: invalid syntax

Cheers,

Dirkjan



More information about the Python-ideas mailing list