看看这些输出,文放你怎么看?
T是一个类,t是T的实例,hello是定义在T中的一个方法
>>> t.hello
<bound method T.hello of <__main__.T object at 0x7f9fa9097e10>>
>>> T.hello
<unbound method T.hello>
>>> id(t.hello)
140323732198176
>>> id(T.hello)
140323732198096
>>> T.__dict__['hello'].__get__(None, T)
<unbound method T.hello>
>>> id(T.__dict__['hello'].__get__(None, T))
140323732198176
>>> id(T.__dict__['hello'])
140323712118984
>>> T.__dict__['hello'].__get__(t, T)
<bound method T.hello of <__main__.T object at 0x7f9fa9097e10>>
>>> id(T.__dict__['hello'].__get__(t, T))
140323732198176
顺便收藏了这两个文章。。感谢文章作者。。
http://onlypython.group.iteye.com/group/wiki/1362-python-39-s-descriptor
http://onlypython.group.iteye.com/group/wiki/1363-python-39-s-descriptor-2