classmethod Python · 内置函数
`classmethod` 是一个装饰器,用于定义类方法。类方法的第一个参数是类本身(通常命名为 `cls`),而不是实例。这意味着你可以通过类直接调用它,也可以通过实例调用,但它不能访问实例属性。常用于备选构造函数或需要操作类属性的场景。
怎么用
class 类名:
@classmethod
def 方法(cls, 参数...):
...
小例子
class 学生:
总人数 = 0
def __init__(self):
学生.总人数 += 1
@classmethod
def 获取总人数(cls):
return cls.总人数
a = 学生()
b = 学生()
print(学生.获取总人数()) # 2
**运行结果**:`2`
运行结果
汪汪
常见使用场景
- 备选构造函数(比如从字符串创建对象)。 - 操作类属性。 - 工厂方法。
提醒:- 类方法不能访问实例属性(因为没有 `self`)。 - 可以通过类或实例调用。
官方文档:https://docs.python.org/zh-cn/3/library/functions.html#classmethod
在代码里遇到不认识的词?打开代码点读机,点一下就懂 → ← Python全部词条