Python中绑定与未绑定的类方法用法分析

 更新时间:2016年04月29日 11:04:05   作者:阿涵-_-  
这篇文章主要介绍了Python中绑定与未绑定的类方法用法,结合实例形式分析了未绑定的类方法与绑定的实例方法相关使用技巧,需要的朋友可以参考下

本文实例讲述了Python中绑定与未绑定的类方法。分享给大家供大家参考,具体如下:

像函数一样,Python中的类方法也是一种对象。由于既可以通过实例也可以通过类来访问方法,所以在Python里有两种风格:

未绑定的类方法:没有self

通过类来引用方法返回一个未绑定方法对象。要调用它,你必须显示地提供一个实例作为第一个参数。

绑定的实例方法:有self

通过实例访问方法返回一个绑定的方法对象。Python自动地给方法绑定一个实例,所以我们调用它时不用再传一个实例参数。

两种方法都是对象,它们可以被传递、存入列表等待。两者运行时都需要一个实例作为第一参数(妤一个self值),但当通过一个实例调用一个绑定方法时Python自动会提供一个。例如我们运行如下的代码:

class Test:
  def func(self,message):
    print message
object1=Test()
x=object1.func
x('绑定方法对象,实例是隐含的')
t=Test.func
t(object1,'未绑定的方法对象,需要传递一个实例') 
#t('未绑定的方法对象,需要传递一个实例') #错误的调用

object1=Test()生成一个实例,object1.func返回一个绑定的方法,把实例object1和方法func绑定。

而Test.func是用类去引用方法,我们得到一个未绑定的方法对象。要调用它就得传一个实例参数,如t(object1,'未绑定的方法对象,需要传递一个实例') 。

大多数时候,我们都直接调用方法,所以一般不会注意到方法对象。但是如果开始写通用的调用对象的代码时,需要特别仔细地注意未绑定方法,它们需要地传一个实例参数。

更多关于Python相关内容可查看本站专题:《Python正则表达式用法总结》、《Python数据结构与算法教程》、《Python Socket编程技巧总结》、《Python函数使用技巧总结》、《Python字符串操作技巧汇总》、《Python入门与进阶经典教程》及《Python文件与目录操作技巧汇总

希望本文所述对大家Python程序设计有所帮助。

相关文章

  • OpenCV(python)版实现文本分割之水平投影法

    OpenCV(python)版实现文本分割之水平投影法

    本文主要介绍了OpenCV(python)版实现文本分割之水平投影法,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2022-08-08
  • Python中使用OpenCV库来进行简单的气象学遥感影像计算

    Python中使用OpenCV库来进行简单的气象学遥感影像计算

    这篇文章主要介绍了Python中使用OpenCV库来进行简单的气象学图像计算的例子,文中是用来进行光谱辐射定标、大气校正和计算反射率,需要的朋友可以参考下
    2016-02-02
  • python实现批量监听页面并发送邮件

    python实现批量监听页面并发送邮件

    这篇文章主要为大家详细介绍了python如何实现自动化批量监听页面并发送邮件,文中的示例代码讲解详细,感兴趣的小伙伴可以跟随小编一起学习一下
    2023-11-11
  • Python算法中的时间复杂度问题

    Python算法中的时间复杂度问题

    时间复杂度用于度量算法的计算工作量,空间复杂度用于度量算法占用的内存空间。这篇文章主要介绍了Python算法中的时间复杂度,需要的朋友可以参考下
    2019-11-11
  • python 表达式和语句及for、while循环练习实例

    python 表达式和语句及for、while循环练习实例

    下面小编就为大家带来一篇python 表达式和语句及for、while循环练习实例。小编觉得挺不错的,现在就分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2017-07-07
  • Python使用sftp实现上传和下载功能

    Python使用sftp实现上传和下载功能

    这篇文章主要为大家详细介绍了Python使用sftp实现上传和下载功能,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2021-04-04
  • Python音乐爬虫完美绕过反爬

    Python音乐爬虫完美绕过反爬

    这篇文章主要介绍了Python音乐爬虫完美绕过反爬的过程,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2021-08-08
  • 使用Python对Excel进行读写操作

    使用Python对Excel进行读写操作

    学习Python的过程中,我们会遇到Excel的读写问题。这时,我们可以使用xlwt模块将数据写入Excel表格中,使用xlrd模块从Excel中读取数据。下面我们介绍如何实现使用Python对Excel进行读写操作。
    2017-03-03
  • Python OpenCV实现简单的颜色识别功能(对红色和蓝色识别并输出)

    Python OpenCV实现简单的颜色识别功能(对红色和蓝色识别并输出)

    Python OpenCV可以用来进行颜色识别,可以通过读取图像的像素值,来判断像素点的颜色,从而实现颜色识别,这篇文章主要给大家介绍了关于Python OpenCV实现简单的颜色识别功能(对红色和蓝色识别并输出)的相关资料,需要的朋友可以参考下
    2023-12-12
  • Python输出由1,2,3,4组成的互不相同且无重复的三位数

    Python输出由1,2,3,4组成的互不相同且无重复的三位数

    这篇文章主要介绍了Python输出由1,2,3,4组成的互不相同且无重复的三位数,分享了相关代码示例,小编觉得还是挺不错的,具有一定借鉴价值,需要的朋友可以参考下
    2018-02-02

最新评论