Gerald Britton wrote:
I now understand the Python does
not consider a class definition as a separate namespace as it does for
function definitions.  That is a helpful understanding.

That is not correct. Classes are separate namespaces -- they just aren't automatically searched. The only namespaces that are automatically searched are local, non-local, global, and built-in.

Similarly, if you have a dictionary of values

--> d = {'eggs':'green', 'method':'train'}

then 'd' is a namespace, but if you're function/method/whatever just tries:

--> if method == 'boat':
-->     blah()

then you'll get a NameError because the 'd' namespace will not be automatically searched. You would have to do:

--> if d['method'] == 'boat':
-->     blah()

to find the variable in that namespace.

Hope this helps.

~Ethan~
--
http://mail.python.org/mailman/listinfo/python-list

Reply via email to