python内装饰器

一、内置装饰器

内置装饰器 含义
classmethod 类方法
staticmethod 静态方法

二、普通方法(回顾)

  • 定义:

    • 第一个参数为self,代表 实例本身

  • 调用:

    • 要有实例化的过程,通过 实例对象.方法名 调用

# 1. 类的定义
class MethodClass:
    class_param = 0  # 类变量

    def __init__(self):  # 实列变量
        self.a = "abc"

    def demo_method(self):
        print("这是一个普通方法")

    def demo_method2(self):
        self.demo_method()
        self.a = "acb"
        print("这是一个普通方法")

    # 定义类方法必须加 classmethod装饰器
    @classmethod
    def class_method(cls):  # 类方法,第一个参数需要改为cls
        # cls.demo_method() 类方法内,不可以直接调用实列方法
        # cls.a  类方法内,不可以直接调用实列变量
        cls.class_method2()  # 类方法内,可以直接调用类变量与类方法
        print("这是一个类方法", cls.class_param)  # 类变量是可以直接调用的

    @classmethod
    def class_method2(cls):  # 类方法,第一个参数需要改为cls
        print("这是一个类方法2", cls.class_param)


# 调用类方法
MethodClass.class_method()  # 无需实例化,直接通过 类.方法名 调用,也可以通过 实例.方法名 调用

# 实例化调用
demo = MethodClass()
demo.demo_method()  # 在调用过程中,类和实列都可以直接调用类方法

# 调用普通方法,需要实例化,要不然会报错
# MethodClass.demo_method()
hmoban主题是根据ripro二开的主题,极致后台体验,无插件,集成会员系统
自学咖网 » python内装饰器