美文网首页
python内置装饰器

python内置装饰器

作者: 萝卜枣 | 来源:发表于2021-10-25 10:34 被阅读0次

1.@property
把类内方法当成属性来使用,必须要有返回值,相当于getter。

class ZhangSan:
  first_name = 'San'
  last_name = 'Zhang'

  @property
  def full_name(self):
      return self.last_name + self.first_name

  zhangSan = ZhangSan()
  print(zhangSan.full_name) #当成属性来使用

2.@staticmethod
静态方法,不需要表示自身对象和自身类的cls参数,就跟使用函数一样。该方法可以直接被调用无需实例化。

class ZhangSan:
    @staticmethod
    def say_hello():
        print('同学你好')

ZhangSan.say_hello()

# 实例化调用也是同样的效果
# 有点多此一举
ZhangSan.say_hello() 等价于
xiaoming = XiaoMing()
xiaoming.say_hello()

3.@classmethod
类方法,不需要self参数,但第一个参数需要是表示自身类的cls参数。该方法可以直接被调用无需实例化,相对于staticmethod的区别在于它会接收一个指向类本身的cls参数

class ZhangSan:
    name = '张三'

    @classmethod
    def say_hello(cls):
        print('同学你好, 我是' + cls.name)
        print(cls)

ZhangSan.say_hello()

相关文章

  • 装饰器模式

    介绍 在python装饰器学习 这篇文章中,介绍了python 中的装饰器,python内置了对装饰器的支持。面向...

  • Python内置装饰器

    1、staticmethod() a)描述 原文:staticmethod(function) -> method...

  • python内置装饰器

    1.@property把类内方法当成属性来使用,必须要有返回值,相当于getter。 2.@staticmetho...

  • PYTHON部分基础D4

    Decorator装饰器 装饰器自己可以有参数 内置函数 文件读写 Python3的继承机制 成员保护和访问限制 ...

  • Python中@property的使用讲解

    装饰器(decorator)可以给函数动态加上功能,对于类的方法,装饰器一样起作用。Python内置的@prope...

  • 36-@property装饰器

    @property装饰器 Python内置的@property装饰器可以把类的方法伪装成属性调用的方式 。 将一个...

  • 装饰器

    """@装饰器- 普通装饰器- 带参数的装饰器- 通用装饰器- 装饰器装饰类- 内置装饰器- 缓存装饰器- 类实现...

  • python-面试QA

    语言 讲讲日常开发中都用到了那些Python内置的模块 推荐一本看过较好的python书籍? 装饰器、迭代器、ye...

  • Python进阶(装饰器)

    note 1:Python内置的@语法就是为了简化装饰器调用。下面两图效果一样。 note 2:python的de...

  • @property装饰器

    Python内置的@property装饰器,把一个方法,变成可以像属性那样,做取值用 @score.setter,...

网友评论

      本文标题:python内置装饰器

      本文链接:https://www.haomeiwen.com/subject/juwyoltx.html