John Morris wrote:
> Does it have something to do with:
> http://effbot.org/pyfaq/why-are-default-values-shared-between-objects.htm
> 
> And if so can anyone explain it a bit for me, I'm being slow tonight.
> 
> I thought each class got it's own namespace and this sharing of mutable 
> objects is confusing me.

It has nothing to do with namespaces, it is the semantics of assignment 
that is your problem. What you have done is essentially the same as 
this, just obfuscated ;-)

In [1]: d = { "srv" : "why", "goo" : "sticky" }
In [2]: n = d
In [3]: n.pop('srv')
Out[3]: 'why'
In [4]: d
Out[4]: {'goo': 'sticky'}

Look at the references I sent (or wait for someone else with more energy 
than I to explain :-) )

Kent
_______________________________________________
Tutor maillist  -  Tutor@python.org
http://mail.python.org/mailman/listinfo/tutor

Reply via email to