On 12/15/2011 3:59 PM, Tim Delaney wrote:
Tim, this seems misguided to me. Finish that foo function
definition: it will *have* to have "for a in args:" Since I don't
know the length of args when I write the function, I have to treat
it as an unknown length. What good is a "structure" that changes
length and definition with every instance? I think you're trying
too hard to fit the reality into the theory.
On 16 December 2011 07:42, Ned Batchelder
This is another place where Python is
inconsistent. We're told, "lists are for homogenous
sequences of varying length, like a C array; tuples are for
heterogenous aggregations of known length, like a C struct."
Then we define a function foo(*args), and Python gives us
a tuple! :-(
How is that inconsistent? At the point where the tuple is
constructed, it has a known length. And it's definitely a
I think where you're getting confused is that you're
thinking of a *single* struct definition for every tuple. But
the concept you should have is that each tuple has its own
struct definition. And with functions, the structure is
defined at function call time.
Python-ideas mailing list