Python 3 内置函数 classmethod( )
Python 3.8.5
语法格式:
@classmethod
描述:
- 把一个方法封装成类方法。
- classmethod 修饰符对应的函数不需要实例化,不需要 self 参数,但第一个参数需要是表示自身类的 cls 参数,可以来调用类的属性,类的方法,实例化对象等。
- @classmethod 这样的形式称为函数的 decorator。
参数说明:
- 无。
返回值:
- 返回函数的类方法。
示例:
class A(object):
bar = 1
def func1(self):
print('foo')
@classmethod
def func2(cls):
print('func2')
print(cls.bar)
cls().func1() # 调用 foo 方法
A.func2() # 不需要实例化
运行结果:
func2
1
foo