看看这些输出,文放你怎么看?
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中的描述符(descriptor)是理解面向对象编程中属性访问机制的关键概念。描述符是实现了特定特殊方法(如...了解并熟练运用描述符,能够使你在Python编程中更好地控制对象的行为,创建出更加灵活和健壮的类结构。
这篇文章主要介绍了通过实例解析python描述符原理作用,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下 本质上看,描述符是一个类,只不过它定义了另一个类中...
数据描述符是指实现了__get__,__set__,__del__方法的类属性(由于Python中,一切皆是对象,所以你不妨把所有的属性也看成是对象) PS:个人觉得这里最好把数据描述符等效于定义了__get__,__set__,__del__三个方法的接口...
Descriptors(描述符)是Python语言中一个深奥但很重要的一个黑魔法,它被广泛应用于Python语言的内核,熟练掌握描述符将会为Python程序员的工具箱添加一个额外的技巧。本文我将讲述描述符的定义以及一些常见的场景,...
描述符是调和属性访问的一个类。描述符类可用来获取、设置或删除属性值。描述符对象是在类定义的时候构建在一个类中的。 一般来说,描述符是一个具有绑定行为的对象属性,其属性的访问被描述符协议方法覆写。这些...
Python中的描述符是实现对象属性访问控制的关键机制,它们提供了对属性读取、写入甚至删除行为的定制。描述符是实现了`__get__`、`__set__`或`__delete__`特殊方法的对象,这三个方法分别在访问、设置和删除属性时被...
描述符是Python面向对象编程中灵活性和强大性的一个体现,掌握其工作原理可以帮助开发者更好地设计和实现类结构。在实际开发中,尤其是在构建框架和库时,描述符的应用尤为常见,能有效提高代码的可维护性和扩展性。
我们知道,在Python中定义类成员和C/C++相比得到的结果具有很大的差别。如下面的定义: class Cclass { int I; void func(); }; Cclass c; 在上面的定义中,C++定义了一个类型,所有该类型的对象都包含有一...
`model-catalog_main.zip`很可能是模型目录的压缩文件,其中可能包含了多个LLM模型的信息,每个模型都有其详细的JSON描述符。这些描述符通常包括模型的名称、作者、版本、描述、依赖的库、输入输出格式等关键信息,...
`案例93 定向梯度直方图(HOG)描述符`可能包含了一个完整的Python脚本,演示了如何利用OpenCV计算HOG特征并应用于实际的行人检测问题。脚本中可能包括以下部分: - 导入必要的库,如OpenCV和Numpy。 - 加载和预处理...
描述符可以很好地完成这一任务。 4. **缓存计算结果**:通过描述符可以在第一次计算出属性值后将其缓存起来,避免重复计算。 #### 三、描述符的分类 描述符分为两种类型:数据描述符和非数据描述符。 - **数据...
Python是一种动态语言,不支持类型检查。当需要对一个对象执行类型检查时,可能会采用下面的方式: class Foo(object): def __init__(self,a): if isinstance(a,int): self.__a = a else: raise TypeError(...
【作品名称】:基于python和pyqt5,实现opencv图像处理,包含内容有基本的图像处理,图像检索以及基于图像描述符的搜索 【适用人群】:适用于希望学习不同技术领域的小白或进阶学习者。可作为毕设项目、课程设计、...
在本教程中,我们将深入探讨ORB特征描述符的Python源码实现以及如何利用OpenCV库来实现它。 首先,让我们了解ORB的基本原理。FAST(Features from Accelerated Segment Test)是一种快速检测图像中角点的关键点检测...
《数据结构与算法 Python语言描述》是裘宗燕教授撰写的一本专著,主要面向希望深入理解数据结构和算法,并且希望通过Python语言实现这些概念的读者。这本书是北京大学的教学资源,因其深入浅出的讲解方式而备受推崇...