"Rance Hall" <ran...@gmail.com> wrote
Variables are variable, that's why we call them variable.
Yes, but Programming variables(*) are variable in the sense that they can represent different values over time. That is not the same as requiring the values themselves to change.
The idea of immutable strings variables blurs the line between these two mathematical concepts
Not at all. In math you can have a variable reference the number 42. Later the same variable may represent a different number, 66 say. But 66 and 42 are different, immutable numbers. It is no different with strings in Python. A variable can refer to 'foo'; at one point and 'bar' at another. But 'foo' and 'bar' (and indeed 'foobar') are different values just as 42, 66 and 108 are different numbers. Python strings act like numbers in that regard.
variable is variable or mutable, where a keyname can not be.
variables are always variable but only some values are mutable You are conflating variables and values. Strings are values (or objects if you prefer) and (arbitrarily) chosen to be immutable by Guido. Variables are associated with values and the values with which they are associated can, and do, change.
(*)Note that variables in programming are treated differently from traditional math variables in that math variables are usually considered as symbols for a constant, unchanging value. It is unusual in math to say
Let x = 42 .... stuff .... Let x = 66 We would introduce a new variable for the new value. But that idiom is very common in programming generally. HTH, -- Alan Gauld Author of the Learn to Program web site http://www.alan-g.me.uk/ _______________________________________________ Tutor maillist - Tutor@python.org To unsubscribe or change subscription options: http://mail.python.org/mailman/listinfo/tutor