Dnia 16-03-2008, N o godzinie 18:20 -0400, Terry Reedy pisze:
> The rule I suggested is 'execute the statement the same *as if* the
> iterable items had been written in the code as a comma sequence'.
One reason I don't like this rule is that it works on the level of the
token sequence rather than the AST. It's too low-level, relying on
peculiarities of the syntax rather than the meaning (does a=*b really
convert b to a tuple only because the tuple syntax uses lone commas?).
And it doesn't directly work for 0 or 1 items, in which case the
behavior must be extrapolated from the behavior for more items.
In my view the expression-level *a should be allowed in explicitly
listed contexts, mostly where there is already a sequence of expressions
to splice into: lists, tuples, sets, argument lists. And also in yield
and comprehensions, where it would be something new, allowing to
actually create the sequence which always had a single element before.
--
__("< Marcin Kowalczyk
\__/ [EMAIL PROTECTED]
^^ http://qrnik.knm.org.pl/~qrczak/
_______________________________________________
Python-3000 mailing list
[email protected]
http://mail.python.org/mailman/listinfo/python-3000
Unsubscribe:
http://mail.python.org/mailman/options/python-3000/archive%40mail-archive.com