On Tue, 18 Jun 2013 11:49:36 +0300, Νίκος wrote: > Στις 18/6/2013 9:39 πμ, ο/η Larry Hudson έγραψε: >> Not quite: a and b _are_ memory addresses, At the same time, a and b >> are references to the data (the objects) stored in those memory >> locations. >> >> The distinction is probably more important in languages like C/C++, >> where the _language_ gives you direct access to, and can manipulate, >> these memory addresses (through pointers). Python handles it >> differently and does not give you this sort of ability, it all occurs >> "under the hood". Yes, the id() function will tell you the addresses, >> but you can't do anything with them other than perhaps compare them. >> It's really pretty much useless information. > > So, a and b are actual memory addresses.
No, no, no, a thousand times no. > Does the term of a pointer exist in Python? No. > I mean if print(a) or > print(b) outputs the object that a and b are linked to, then how do we > access a's and b's memory locations themselves t create links among > variables, one pointing to the other and so on? You cannot. You can only have links between OBJECTS, not between VARIABLES. There is no way to have a name "a" set to point to another name "b". All you can do is have a name "a" set to refer to the same object as "b" has *right now*. If "b" changes to another object, "a" will not follow. > Can a variable point to another variable or variables never point to > other variables but instead are *only* linked to the objects of those > var's instead? Names are *always* linked to objects, not to other names. a = [] b = a # Now a and b refer to the same list a = {} # Now a refers to a dict, and b refers to the same list as before -- Steven -- http://mail.python.org/mailman/listinfo/python-list