object.bar is just a normal object. It has a __call__ member function that gets invoked when you call object.bar().
So object.bar() calls the object.bar object.
Libraries like pyqt need the reference to the object so they are able to invoke it whenever they need to. If you try passing object.bar() to set a listener your giving qt whatever the bar() method returns instead of the bar object itself.