如何修改我的pylintrc,以便将给定的装饰器解释为类方法。
pydantic定义了一个validator装饰器,以允许模型类的属性验证,并作为类方法进行操作。pylint抛出一个
E0213: Method 'has_risk_assigned' should have "self" as first argument (no-self-argument)
对于声明为:
from pydantic import BaseModel, validator
class RiskyRecord(BaseModel):
# ... attributes .
我仍然习惯于Python惯例,并使用Pylint使我的代码更加Pythonic,但我对Pylint不喜欢单个字符变量名的事实感到困惑。我有几个这样的循环:
for x in x_values:
my_list.append(x)
当我运行pylint时,我得到了Invalid name "x" for type variable (should match [a-z_][a-z0-9_]{2,30} --这意味着一个有效的变量名必须在3到31个字符之间,但是我已经浏览了,我没有看到任何关于单个小写字母的明确信息,而且我确实看到了很多使用它们的例子。
在PEP8中有什么是我
是否可以使用自定义rcfile和只有错误的标志来运行pylint?我希望pylint报告典型用法中的警告,但是当检查在我们的CI服务器上运行时,我想使用--errors-only。
例如,假设我有test.py:
"""test.py -- a test of pylint's error-handling."""
def some_method():
"""Just a method."""
print 'hi'
return 2
以及自定义的py
安装opencv-contrib-python时,pylint不识别主cv2模块的子模块(相关但不相同:)。
例如,考虑:
from cv2 import aruco
print(aruco.DICT_4X4_100)
使用--extension-pkg-whitelist=cv2,cv2.aruco运行pylint会给出以下消息:
[pylint] Instance of 'module' has no 'DICT_4X4_100' member [E1101]
但是,代码是完全有效的,并且运行正常,甚至VSCode的也能够为aruco子模块成员提供自动完成功