[Tutor] Distinction between tuples and lists
Alan Gauld
alan.gauld at btinternet.com
Fri Jan 2 17:41:13 CET 2009
"Roel Schroeven" <rschroev_nospam_ml at fastmail.fm> wrote
> In the point of view taken by Guido and the writer of the blogs
> mentioned before, a tuple of x, y coordinates is not homogeneous,
> it's
> heterogeneous. Both x and y do have the same type, but that's not
> the
> point. The point is that the meaning of the two elements is
> different.
> It makes, for example, no sense to sort such a tuple.
Yes, I spotted Guido making that point shortly after posting :-)
I guess its more a case of thinking of tuples as lightweight records
rather that strictly heterogenuous(*) types (which is a somewhat moot
issue in Python). So the significant point is that in a tuple each
"field"
has a meaning specific to its position.
The big problem is that they are also immutable which greatly
reduces their effectiveness in that role. So the alternatives are
create
a class - for possibly a single instance - or use a list as a writable
record.
(*) Although heterogenuous does not really debar same type
items but the focus on type is I suspect misleading in terms of
understanding the role of tuples.
--
Alan Gauld
Author of the Learn to Program web site
http://www.freenetpages.co.uk/hp/alan.gauld
More information about the Tutor
mailing list