Don't understand behavior; instance form a class in another class' instance

Martin P. Hellwig martin.hellwig at
Fri Mar 26 01:06:06 CET 2010

On 03/25/10 23:41, Christian Heimes wrote:
> Martin P. Hellwig schrieb:
>> What I don't understand why in the second test, the last boolean is True
>> instead of (what I expect) False.
>> Could somebody enlighten me please as this has bitten me before and I am
>> confused by this behavior.
> Hint: is not a reference to When you
> alter you don't magically change,
> too. Python doesn't have variables like C pointers. Python's copy by
> object (or share by object) behavior can be understand as labels. The
> label references the same object as
> until you change where the label points to.
> Christian

Ah okay thanks for the explanation, Am I correct in thinking (please 
correct me if I mangle up the terminology and/or totally are in the 
wrong ballpark) that this is more or less because the label of the first 
class is to an object (boolean with value False)
and the label of the second class does not cascade to the first label 
for looking something up but instead during assignment sees that it is a 
label to an object instead of the object itself thus copies the label 
content instead?

I probably expected classes namespaces to behave in about the same way 
as lists and dictionaries do, don't know where I picked that up.

Thanks again,


More information about the Python-list mailing list