In the infamous words of Tim Peters, "Namespaces are one honking great idea -- let's do more of those!" (PEP 20) Python's type system is built on the basis of well-bounded namespaces. Come look behind the curtain and you'll see Python in a whole new light. We'll also talk about how to put this knowledge to use whenever you write modules, classes, and functions.
The idea of grouping variables within namespaces is nothing new, inside and outside of Python. Perhaps the concept is so pervasive now that we don't stop to consider the principles at work. By understanding the lower layers of abstraction here, we can make even better use of namespaces. For Python, this understanding is all the more useful since namespaces are the essence of the type system.
In this talk we will cover the following topics, peppered with examples: