装饰器

来源:7-3 使用ViewModel处理书籍数据 下

慕丝8011162

2018-11-27

老师,如何判断何时使用类方法装饰器,何时使用静态方法装饰器呢?

写回答

2回答

kryo

2019-03-23

从网上找到的粘贴过来,班门弄斧了:

类方法是将类本身作为对象进行操作的方法。假设有个方法,且这个方法在逻辑上采用类本身作为对象来调用更合理,那么这个方法就可以定义为类方法。另外,如果需要继承,也可以定义为类方法。通常情况下,类方法使用@classmethod装饰器来声明。

静态方法是指类中无需实例参与即可调用的方法(不需要self参数和cls参数),在调用过程中,无需将类实例化,直接在类之后使用.号运算符调用方法。通常情况下,静态方法使用@staticmethod装饰器来声明。

静态方法是类中的函数,不需要实例。静态方法主要是用来存放逻辑性的代码,逻辑上属于类,但是和类本身没有关系,也就是说在静态方法中,不会涉及到类中的属性和方法的操作。可以理解为,静态方法是个独立的、单纯的函数,它仅仅托管于某个类的名称空间中,便于使用和维护。


0
0

7七月

2018-11-28

我没太明白什么是类方法装饰器,什么是静态方法装饰器?你需要给什么函数用装饰器就写装饰器啊。

0
0

Python Flask高级编程之从0到1开发《鱼书》精品项目

7月老师深入浅出剖析Flask核心机制,和你一起探讨Python高级编程

2735 学习 · 1267 问题

查看课程