> > I personally quite like them, but I would like them to be more general. > > It already is. The *target can be anywhere in the sequence.
Im not sure if this is a genuine understanding, or trollish obtuseness. Yes, the target can be anywhere in the sequence. And yes, the resulting list can contain objects of any type, so its very flexible in that regard too. But to relate it to the topic of this thread: no, the syntax does not allow one to select the type of the resulting sequence. It always constructs a list. Yes, we can cast the list to be whatever we want on the next line, but the question is whether this language design can be improved upon. The choice of a list feels arbitrary, adding another line to cast it to something else would be even more verbose, and whats more, there would be serious performance implications if one should seek to apply this pattern to a deque/linkedlist; it would make taking off the head/tail of the list from a constant to a linear operation. That is: >>> head, deque(tail) = somedeque Is better in every way I can think of (readability, consistence, performance) than: >>> head, *tail = somedeque >>> tail = deque(tail) -- http://mail.python.org/mailman/listinfo/python-list