189 8069 5689

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()

分享名称:python内装饰器
路径分享:http://jkwzsj.com/article/dsojdig.html

其他资讯