I am looking for a good introduction to Python namespaces. I found this tutorial to be good, but I\'m sure there is more to the story than that.
The Python reference con
It is all tied to naming in Python. Names are attached to objects in such a way that they can be detached and given to a new object. All objects without names are removed from memory (see here). Names available in your module are implemented as dictionaries and can be displayed using the __dict__
attribute.
Type in
>>> import time
>>> time.__dict__
The result is a dictionary containing the names used in defining objects in the built-in module time
.
They're really not all that complex. The import mechanisms can be somewhat complex and with relative imports now it can get even a bit more tricky, but as far as actual namespaces and how they're resolved in code, that tutorial seems to be pretty comprehensive.
The language reference is always kind of the be-all, end-all however, but it's often overkill for those starting out.
If you have any specific questions as to how certain things work, you'll get good responses on here.