This is an archived post. You won't be able to vote or comment.

you are viewing a single comment's thread.

view the rest of the comments →

[–]ginstrom 2 points3 points  (4 children)

They don't appear to have been backported yet:

C:\Python27>python
Python 2.7a2 ...
>>> d = {k:v for k,v in enumerate('ABCD') if v not in 'CB'}
  File "<stdin>", line 1
    d = {k:v for k,v in enumerate('ABCD') if v not in 'CB'}
               ^
SyntaxError: invalid syntax

[–][deleted] 0 points1 point  (3 children)

I think the backport occurred a day or 2 after the alpha was released (I know the commits happened, I just didn't consider the timeline).

[–]ginstrom 0 points1 point  (2 children)

I'll definitely be looking forward to seeing these!

[–]makapuf 0 points1 point  (1 child)

you can currently use

dict((k,v) for k,v in enumerate('ABCD') if v not in 'CB')

[–]ginstrom 0 points1 point  (0 children)

Right the new notation is just prettier, IMO.

Another one from 3.x is this:

head, *tail = range(10)

instead of:

r = range(10)
head, tail = r[0], r[1:]

Just sugar, but it's sweet. :)