python-3.x - 为什么在 Python 中使用 @classmethods 而不是没有实例的普通方法?
问题描述
例如:
class A:
factor = 2
def salary(self):
base_sal = 10000
sal = base_sal*factor
print("Your Salary:",sal)
@classmethod
def inc_factor(cls):
cls.factor += 0.1
def increase_factor():
A.factor += 0.1
为什么我们不能只使用 A.increase_factor() 而不是使用 @classmethod,因为它只会在 A 类中起作用,为什么值得传递类参数来执行与普通方法相同的操作?
解决方案
推荐阅读
- jenkins-pipeline - 具有条件代理类型的 Jenkins 流水线矩阵
- javascript - 如何显示/隐藏
- 使用 JavaScript 基于其文本内容?
- flutter - (Flutter) 升级到 NullSafety
- r - R - 双 y 轴图表:对齐 0 并调整比例
- javascript - javascript transformToDocument XSLT 不是预期的输出
- java - 更新 Android 中多部分表单数据请求的默认 Content-Type
- c# - 从 dll 文件为 Excel 创建加载项安装程序
- reactjs - React props 测试用例未正确渲染
- regex - 从 HTTP 请求中提取用户代理
- node.js - 如何将插件应用于@middy/validator?