George Sakkis wrote:
A generalization of the 'for .. in' syntax that would handle> extra arguments the same way as functions would be:
for (x,y,z=0,*rest) in (1,2,3), (3,4), (5,6,7,8): print x, y, z, rest
I'd love to see this in python one day; it is pretty obvious what
> it would do for anyone familiar with function argument tuples.
Let's all keep in mind that for...in... is using standard tuple unpacking rules (you're getting the next tuple from a list of tuples, and then unpacking that tuple), so what is really being proposed are extensions to tuple unpacking. (Making this work in the context of a for loop but not work in other tuple-unpacking situations would create inconsistency.)
Function arguments are *not* (in general) a case of tuple unpacking, on the other hand, so the parallels between function arguments and for loop control-variable tuples are not so straightforward as is being claimed.
There may be valid arguments in favor of enhancing tuple unpacking in this way (indeed, I believe I recall a thread or two on this subject), but it's important to consider the general consequences, not just the single aspect of for-loop usage.
Jeff Shannon
-- http://mail.python.org/mailman/listinfo/python-list