很好的文章讲述python的描述符

看看这些输出,文放你怎么看?

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

你可能感兴趣的:(python)