【发布时间】:2017-06-20 11:12:01
【问题描述】:
R0902 限制的背后是什么?太多的实例属性会减慢 python 解释器的速度还是仅仅是因为太多的实例属性会使类更难理解?
【问题讨论】:
R0902 限制的背后是什么?太多的实例属性会减慢 python 解释器的速度还是仅仅是因为太多的实例属性会使类更难理解?
【问题讨论】:
来自 (DOCS):
太多实例属性(R0902):
- 太多实例属性 (%s/%s) 当类有太多实例属性时使用,尝试减少它以获得更简单(也更容易使用)的类。
然后从 (Tutorial):
...但是我遇到了错误消息,这些错误消息让我不知道出了什么问题,仅仅是因为我不熟悉代码理论的底层机制。让我的新手感到困惑的一个错误是:
:too-many-instance-attributes (R0902): *Too many instance attributes (%s/%s)*感谢 Pylint 向我指出,我现在明白了。如果你没有得到那个,倒一杯新鲜的咖啡并研究一下 - 让你的程序员思维成长!
所以,是的,这不是很清楚。
但是,如上所述,对于方法、类和模块,越小通常越有利于可理解性、可重用性和可管理性。当事情变得太大时,通常表明事情可以被重构,以使它们变得更小。确实没有办法对此进行硬性限制,正如this question 中讨论的如何关闭此消息,pylint 不应该有最后的发言权。
因此,只需将消息作为提示,进一步研究该部分代码。
【讨论】:
# pylint: disable=R0902。