新的pycharm 版本(3.1.3 社区版)提出将不能处理当前对象状态的方法转换为静态。
这样做的实际原因是什么?某种微性能(或内存)优化?
最佳答案
PyCharm“认为”您可能想要拥有一个静态方法,但您忘记将其声明为静态(使用 @staticmethod
装饰器)。
PyCharm 提出这一点是因为该方法在其主体中没有使用 self
,因此实际上并没有更改类实例。因此,该方法可以是静态的,即无需传递类实例或什至无需创建类实例即可调用。
https://stackoverflow.com/questions/23554872/