In Python 2.x, a bound method has three attributes:
im_func is the function object.
im_class is the class the method comes from.
im_self is the self object the method is bound to.
So, just do this:
print my_type.im_self
In Python 3.x, im_func is renamed __func__, im_self is renamed __self__, and im_class is gone.
In 2.7, you can use the 3.x names in place of the 2.x names if you prefer.
The details of this are buried pretty deep in the documentation, but the inspect module docs has a handy table giving you a brief explanation of what the most important special fields in the various built-in types do.
This blog post has more detail, and if you want to know why it works like that, that's mostly documented in a few different posts on Guido's History of Python blog between from March 2009 and June 2010.
my_type = field.get_internal_type, do it like this -my_type = field.get_internal_type()