python中自带的三个装饰器的实现

 更新时间:2019年11月08日 09:17:35   作者:我爱学python  
这篇文章主要介绍了python中自带的三个装饰器的实现,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧

说到装饰器,就不得不说python自带的三个装饰器:

1、@property 将某函数,做为属性使用

@property 修饰,就是将方法,变成一个属性来使用。

class A():


  @property
  def pfunc(self):
    return self.value

  @pfunc.setter
  def pfunc(self,value):
    self.value = value

  @property
  def pfunc1(self):
    print('this is property')

if __name__=="__main__":

  A.pfunc = 9
  print A.pfunc
  A.pfunc1

2、@classmethod 修饰类的方式

带修饰类方法:cls做为方法的第一个参数,隐式的将类做为对象,传递给方法,调用时无须实例化。

普通函数方法:self做为第一个参数,隐式的将类实例传递给方法,调用方法时,类必须实例化。

class A():
  def func(self,x,y):
    return x * y

  @classmethod
  def cfunc(cls,x,y):
    return x * y

if __name__=="__main__":
  print A().func(5,5)
  print A.cfunc(4,5)

3、@staticmethod 修饰类的方式

1)是把函数嵌入到类中的一种方式,函数就属于类,同时表明函数不需要访问这个类

2)使用修饰服,修饰方法,不需要实例化

class A():
  def func(self,x,y):
    return x * y

  @staticmethod
  def sfunc(x,y):
    return x * y

if __name__=="__main__":

  print A.sfunc(6,5)

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持脚本之家。

相关文章

  • 在python中做正态性检验示例

    在python中做正态性检验示例

    今天小编就为大家分享一篇在python中做正态性检验示例,具有很的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2019-12-12
  • Python 列表操作全面教程示例

    Python 列表操作全面教程示例

    这篇文章主要为大家介绍了Python 列表操作的全面教程示例详解,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪
    2023-10-10
  • Python数据结构之双向链表详解

    Python数据结构之双向链表详解

    单链表只有一个指向直接后继的指针来表示结点间的逻辑关系,可以方便的从任一结点开始查找其后继结点,但要找前驱结点则比较困难,双向链表是为了解决这一问题,使用两个指针表示结点间的逻辑关系。本文将重点为大家介绍双向链表的相关操作,需要的可以参考一下
    2022-01-01
  • Python如何使用vars返回对象的属性列表

    Python如何使用vars返回对象的属性列表

    这篇文章主要介绍了Python如何使用vars返回对象的属性列表,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
    2020-10-10
  • python数据分析基础之pandas中loc()与iloc()的介绍与区别介绍

    python数据分析基础之pandas中loc()与iloc()的介绍与区别介绍

    我们经常在寻找数据的某行或者某列的时常用到Pandas中的两种方法iloc和loc,两种方法都接收两个参数,第一个参数是行的范围,第二个参数是列的范围,这篇文章主要介绍了python数据分析基础之pandas中loc()与iloc()的介绍与区别,需要的朋友可以参考下
    2024-07-07
  • 如何利用Python统计正数和负数的个数

    如何利用Python统计正数和负数的个数

    Python检查数据中的正/负数是一种常见的数据处理操作,可以通过编写代码来实现,下面这篇文章主要给大家介绍了关于如何利用Python统计正数和负数的个数的相关资料,需要的朋友可以参考下
    2024-05-05
  • CentOS 7下安装Python 3.5并与Python2.7兼容并存详解

    CentOS 7下安装Python 3.5并与Python2.7兼容并存详解

    这篇文章主要给大家介绍了在CentOS 7下安装Python 3.5并与Python2.7兼容并存的相关资料,文中将安装步骤介绍的非常详细,对大家具有一定的参考学习价值,需要的朋友们下面跟着小编来一起学习学习吧。
    2017-07-07
  • QT5 Designer 打不开的问题及解决方法

    QT5 Designer 打不开的问题及解决方法

    这篇文章主要介绍了QT5 Designer 打不开的问题及解决方法,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2020-08-08
  • 详解Python列表解析式的使用方法

    详解Python列表解析式的使用方法

    Python 是一种极其多样化和强大的编程语言!当需要解决一个问题时,它有着不同的方法。本文将将会展示列表解析式的使用方法,需要的可以参考一下
    2022-04-04
  • python操作excel的方法(xlsxwriter包的使用)

    python操作excel的方法(xlsxwriter包的使用)

    这篇文章主要为大家详细介绍了python操作excel的方法,xlsxwriter包的使用方法,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2018-06-06

最新评论