The Python Pubsub package provides a publish - subscribe API that allows data to be sent between independent parts of your application. For instance, between the GUI components and the Application Controller. Using publish - subscribe in your application can dramatically simplify its design and improve testability. I liked the following summary by the creator of wxPython:
Basically you just have some part(s) of your program subscribe to a particular topic and have some other part(s) of your program publish messages with that topic. All the plumbing is taken care of by pubsub. – Robin Dunn, Jun 2007
Schematically:

Using publish - subscribe in an application can sometimes dramatically simplify its design and improve testability. This is explained further in the API section.