Because, by the time the user function is imported and attributed to the custom method, soandso has already been instantiated and contains the information tha needs to accessed by the user's function.
-- http://mail.python.org/mailman/listinfo/python-list