On Fri, 2006-07-28 at 23:38 -0400, Kent Johnson wrote: > Dave Kuhlman wrote: > > On Thu, Jul 27, 2006 at 05:34:13PM +0100, Alan Gauld wrote: <snipped> > Right up to here, I'm standing on my chair and cheering. > > - Store them in variables. > > > Ouch! No! Variables don't store values, they refer to values. Thinking > of variables as containers doesn't work in Python.
What I told my kids (Dad, Do we really have to learn Python?) was that variables are sticky notes. The variable name is written on the note and stuck onto the object. a = 3 creates an int object with a value of 3 and slaps a sticky note containing "a" onto the object. a = 3 + 1 results in a new int object with a value of 4 and the sticky note is transferred from the "3 object" to the "4 object". (int objects are immutable, so the "3 object" can not be changed into a "4 object"). If there are no sticky notes on the "3 object", it can be discarded and the memory it used to occupy is now available for other objects. - - - - - - - - - - - - - - - - - Dave, this may be too simplistic for the document you're writing, but I think the analogy provides a useful mental image. -- Lloyd Kvam Venix Corp _______________________________________________ Tutor maillist - Tutor@python.org http://mail.python.org/mailman/listinfo/tutor