python assignment
dan
danbmil99 at yahoo.com
Tue Jul 22 20:59:08 EDT 2003
More information about the Python-list mailing list
Tue Jul 22 20:59:08 EDT 2003
- Previous message (by thread): python assignment
- Next message (by thread): Shallow vs Deep copies [was Re: python assignment]
- Messages sorted by: [ date ] [ thread ] [ subject ] [ author ]
without stirring the pot too much -- could someone please point me to whatever documentation exists on the philosophy, semantics, and practical implications of how Python implements the assignment operator? So far I can't find much useful in the regular documentation. I understand the basic concept that names are bound to objects which exist on the heap, but that still doesn't explain why a = b doesn't _always_ cause a to point to the same object as b. What determines when the object in question is copied? What determines when a future maniplulation of the variable will cause it to point to an object that is already referenced by another variable? (see code below for an example). What I need is an exact and unambiguous algorithm for determining when an assignment will change the id of the variable (or should I say, when the evaluation of an expression will cause a new object to be created). Some of the issues involved can be discerned from the following session: >>> a = 1 >>> b = a >>> a is b True >>> a += 1 >>> a -= 1 >>> a is b True >>> a = 1.0 >>> b = a >>> a is b True >>> a += 1 >>> a -= 1 >>> a is b False >>> a == b True
- Previous message (by thread): python assignment
- Next message (by thread): Shallow vs Deep copies [was Re: python assignment]
- Messages sorted by: [ date ] [ thread ] [ subject ] [ author ]
More information about the Python-list mailing list