什么是“实例方法”?

时间:2017-09-15 01:47:34

标签: python python-3.x

来自https://docs.python.org/3.3/reference/datamodel.html

  

实例方法

     

实例方法对象组合了一个类,一个类实例和任何一个   可调用对象(通常是用户定义的函数)。

如果是定义,你能解释它的含义吗?

如果它不是定义,“实例方法”的定义是什么?

“实例方法”是否与类的方法概念相同?

由于有人提出了类方法和静态方法,绑定方法和未绑定方法,让我澄清一下:我理解一个类的方法可以是普通方法,类方法或静态方法。我理解通过类或其实例访问的类的方法可以绑定或函数。我从未听说过“实例方法”。我不知道它甚至在查看引用之后,并且不确定它是否与普通方法,类方法或静态方法或绑定方法或函数有关。我希望你能理解我的困惑。

感谢。

3 个答案:

答案 0 :(得分:3)

>>> class Foo:
...     def im_a_method(self):
...         pass
... 
>>> x = Foo()
>>> x.im_a_method
<bound method Foo.im_a_method of <__main__.Foo object at 0x7f4f1993dd30>>

多田!这是一个实例方法对象。这是在你调用对象的方法之前得到的东西。

答案 1 :(得分:2)

什么是实例方法?

实例方法绑定到类实例的函数。类的实例隐式传递为实例方法的第一个参数。它基本上属于该特定实例。实例方法是&#34; normal&#34;人们使用的方法类型。这与分别使用staticmethodclassmethod创建的静态方法或类方法相反。

以下是实例方法的示例:

"cn=RA010-CAT-PAT-PUN"

就这么简单。

答案 2 :(得分:1)

你的困惑来自于这个定义到底是什么。术语&#34;实例方法&#34;实际上用于描述概念(一种在一个实例上工作的方法 - 通过与类方法或静态方法的对立)及其技术实现。您引用的定义是关于技术实现。

如果您想了解此定义的上下文,可以阅读this article in the Python wiki,它解释了Python如何在运行时将函数转换为方法。